
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
13.10.2006, 01:17
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
Я работаю c sql server 2000. Мне надо получить определенное количество записей. Это количество лежит в переменной n. Как правильно составить запрос пишу: select TOP n ID1 FROM Work, ну и т.д. Ошибка. Помогите! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 08:55
|
|||
|---|---|---|---|
select TOP |
|||
|
#18+
Вариантов ... несколько > 2х, но самые быстрые: 1. Как Вы уже сказали - TOP, но для этого придётся формировать динамический запрос и запущать полученную строчку; 2. использовать set rowcount N. Подробност см. BOL. И вопросы по скулю лучше задавать на соотв. форуме :) Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 10:46
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
Добавлю, что SQL Server 2005 поддерживает конструкцию TOP @n, где @n - переменная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 11:15
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
Код: plaintext 1. 2. 3. ---- www.hramin.jino-net.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 12:26
|
|||
|---|---|---|---|
select TOP |
|||
|
#18+
убить камнем за такой динамик sql ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 13:52
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
Ramin Код: plaintext 1. 2. 3. ---- www.hramin.jino-net.ru Это не прошло. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 13:53
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
скажы честно, какая разница будет???, самый лучшый вариант сказал Bigheadman , но это не для 2000! стринг в конце концов получится "select TOP 15 ID1 FROM Work"; ---- www.hramin.jino-net.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 13:54
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
авторскажы честно, какая разница будет???, тоесть исправлю себя, ---"какие не достатки будет"??? отвечу --- никакие! доказывай что будет!! ---- www.hramin.jino-net.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 13:58
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
puma1 Ramin Код: plaintext 1. 2. 3. ---- www.hramin.jino-net.ru Это не прошло. а так: Код: plaintext 1. 2. 3. ---- www.hramin.jino-net.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 14:22
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
Ramin puma1 Ramin Код: plaintext 1. 2. 3. ---- www.hramin.jino-net.ru Это не прошло. а так: Код: plaintext 1. 2. 3. ---- www.hramin.jino-net.ru То же самое. :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 14:26
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
2 puma1. Если не приведете текст ошибки, то гадание на кофейной гуще будет долго продолжаться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 14:27
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
слушай пумучка, я сперва добавлял на стринг интегер что б ты тоже сама что то сама сообразила а не копировалкод, если не работает стринг на стринг, и просто извини меня тупо сказать не прошло тогда вы что то не договариваети! авторТо же самое. :( какую ошибку дает? ---- www.hramin.jino-net.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 15:02
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
Raminслушай пумучка, я сперва добавлял на стринг интегер что б ты тоже сама что то сама сообразила а не копировалкод, если не работает стринг на стринг, и просто извини меня тупо сказать не прошло тогда вы что то не договариваети! авторТо же самое. :( какую ошибку дает? ---- www.hramin.jino-net.ru Во-первых, ты может уже давно в этом программируешь, я вообще только начала учить ADO.NET , если, что-то не получается обращаюсь сюда, потому-что не куда больше, учусь сама. Если спросила, какую-то ерунду, то не надо отвечать грубостью, лучше промолчи или объясни. Вообще я читала, что нельзя в SQL Server 2000, в случае с TOP вкладывать переменные, можно только так например Select TOP 5, а так нельзя Select TOP n. Из-за этого и обратилась за помощью, а не чтоб копировать твой код. А текст ошибки Object reference not set to an instance of an object. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. И показывает на строку reader.Close(); А когда пишу, Select TOP 5, то все работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 15:24
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
zz118приведи полный код private void Page_Load(object sender, System.EventArgs e) { string str1=""; int k=0; XmlTextReader reader = new XmlTextReader (Server.MapPath("djon.xml")); while (reader.Read()) { if(reader.Name=="AMOUNT") { str1=reader.ReadElementString(); k=Convert.ToInt32(str1); } } SqlConnection myConnection = new SqlConnection("server=(local);database=Northwind;Trusted_Connection=yes"); SqlDataReader reader1= null; try { myConnection.Open(); string sqlstring = "select TOP k ID1 FROM Work ORDER BY ID1"; SqlCommand myCommand = new SqlCommand(sqlstring, myConnection); reader1 = myCommand.ExecuteReader(); while (reader1.Read()) { Response.Write("ID1="+reader1.GetDecimal(0)); Response.Write(" "); } } catch (SqlException ex) { Response.Write(ex.Message); } finally { reader1.Close(); myConnection.Close(); } } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 15:47
|
|||
|---|---|---|---|
select TOP |
|||
|
#18+
"select top " + Convert.ToString(k) + " * ..." хотя бы так, но ОЧЕНЬ не безопасно! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 15:56
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
авторА текст ошибки Object reference not set to an instance of an object. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. И показывает на строку reader.Close(); А когда пишу, Select TOP 5, то все работает Постойте. Указанная ошибка никоим образом не связана с SELECT TOP. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 15:58
|
|||
|---|---|---|---|
select TOP |
|||
|
#18+
puma1 если, что-то не получается обращаюсь сюда, потому-что не куда больше, учусь сама. Все как правило учаться сами, а не ходят на курсы. puma1 Если спросила, какую-то ерунду, то не надо отвечать грубостью, лучше промолчи или объясни. Ну конечно это же ваш личный репититор, должен расстилаться, чтобы вас не задеть никак и все все все подробно объяснять. puma1 Вообще я читала, что нельзя в SQL Server 2000, в случае с TOP вкладывать переменные, можно только так например Select TOP 5, а так нельзя Select TOP n. Из-за этого и обратилась за помощью, а не чтоб копировать твой код. Конкретно в TOP нельзя, но вы формируете строку на стороне клиента, а значит можете в строковую переменную запихнуть строку с количеством , как это сделать вам уже объяснили. Если у вас выдает ошибку на Reader.Close, не пробовали убрать TOP из запроса и вставить туда просто SELECT * from ...., может дело то не в TOP\ Из приведенного кода Код: plaintext Переменные так не вставляются в строку, сервер о вашей K ничего не знает, сделайте Код: plaintext По поводу k.toString пусть СИсты меня поправят, я в нем не знаток. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 16:03
|
|||
|---|---|---|---|
select TOP |
|||
|
#18+
+ ко всему вне блока try{...} этот reader вообще не существует (=null). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 16:08
|
|||
|---|---|---|---|
select TOP |
|||
|
#18+
zz118+ ко всему вне блока try{...} этот reader вообще не существует (=null). Это вы к тому что в finally можем попасть до присвоения ридера...да, похоже на это... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 16:09
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
Думающий puma1 если, что-то не получается обращаюсь сюда, потому-что не куда больше, учусь сама. Все как правило учаться сами, а не ходят на курсы. puma1 Если спросила, какую-то ерунду, то не надо отвечать грубостью, лучше промолчи или объясни. Ну конечно это же ваш личный репититор, должен расстилаться, чтобы вас не задеть никак и все все все подробно объяснять. puma1 Вообще я читала, что нельзя в SQL Server 2000, в случае с TOP вкладывать переменные, можно только так например Select TOP 5, а так нельзя Select TOP n. Из-за этого и обратилась за помощью, а не чтоб копировать твой код. Конкретно в TOP нельзя, но вы формируете строку на стороне клиента, а значит можете в строковую переменную запихнуть строку с количеством , как это сделать вам уже объяснили. Если у вас выдает ошибку на Reader.Close, не пробовали убрать TOP из запроса и вставить туда просто SELECT * from ...., может дело то не в TOP\ Из приведенного кода Код: plaintext Переменные так не вставляются в строку, сервер о вашей K ничего не знает, сделайте Код: plaintext По поводу k.toString пусть СИсты меня поправят, я в нем не знаток. select TOP k ID1 FROM. Я знаю, что так не пишут, просто в этом мой вопрос и состоял, как правильно это написать, до этого писала "select TOP " + k + " ID1 FROM. Выдавал ошибку. А насчет этого ( Конкретно в TOP нельзя, но вы формируете строку на стороне клиента, а значит можете в строковую переменную запихнуть строку с количеством , как это сделать вам уже объяснили.) я поняла. Спасибо за участие ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 16:12
|
|||
|---|---|---|---|
select TOP |
|||
|
#18+
puma1 Я знаю, что так не пишут, просто в этом мой вопрос и состоял, как правильно это написать, до этого писала "select TOP " + k + " ID1 FROM. Ну так вы ставьте вопрос точнее..и приводе пример того что у вас не работает и текст ошибки, вам будут помогать гараздо быстрее =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 16:22
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
Думающий puma1 Я знаю, что так не пишут, просто в этом мой вопрос и состоял, как правильно это написать, до этого писала "select TOP " + k + " ID1 FROM. Ну так вы ставьте вопрос точнее..и приводе пример того что у вас не работает и текст ошибки, вам будут помогать гараздо быстрее =) Хорошо. Спасибо большое за помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 16:47
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
дорогой Пума если обидел вас извините не хотел но как не нервничать?! я дал вам такой код Код: plaintext а вы даже не правльно скопировали :) авторstring sqlstring = "select TOP k ID1 FROM Work ORDER BY ID1"; ---- www.hramin.jino-net.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.10.2006, 17:01
|
|||
|---|---|---|---|
|
|||
select TOP |
|||
|
#18+
Raminдорогой Пума если обидел вас извините не хотел но как не нервничать?! я дал вам такой код Код: plaintext а вы даже не правльно скопировали :) авторstring sqlstring = "select TOP k ID1 FROM Work ORDER BY ID1"; ---- www.hramin.jino-net.ru Дело в том, что я все перепробывала и так "select TOP "+n+" ID1 FROM Work" и так "select TOP "+n.ToString()+" ID1 FROM Work". Я думала в этом проблема, оказалось, что ошибка была в другом. Сейчас все прекрасно работает. Спасибо за помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=17&mobile=1&tid=1353064]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
142ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
71ms |
get tp. blocked users: |
1ms |
| others: | 197ms |
| total: | 452ms |

| 0 / 0 |
