singlepost

MSSQL – Жду вопросов :) << На главную или назад  

А то как-то скучновато стало… :)

19 ответов в теме “MSSQL – Жду вопросов :)”

  1. 19
    Леонид Максимов ответил:

    читайте еще. там есть еще кучка хитростей.

  2. 18
    Валерий Волков ответил:

    #17 "… – это одна сложная команда." – если только понимать "сложность" в смысле "это одна составная команда"…т.к. синтаксис её совершенно не сложный…

  3. 17
    Валерий Волков ответил:

    прочитал….я лузер – не знал я этого…. :(

  4. 16
    Леонид Максимов ответил:

    вовсе не обязательно разбивать на несколько команд – читайте Books Online на тему "create authorization schema". не знаю, как в предыдущих версиях, но уже в 2000 (8.0) работает. хинт: create authorization schema … – это одна сложная команда.

  5. 15
    Alexander Zubakov ответил:

    #7, Валерий [Папа-Вольт] Волков
    Спасибо.

  6. 14
    Валерий Волков ответил:

    #14
    В любом случае одной командой это не выполнить – необходимо разбивать на несколько…. по крайней мере в MSSQL 6.5, 2000, 2005

  7. 13
    Леонид Максимов ответил:

    вопрос вновь недопонят. возможно создание приведенной схемы (а также множества подобных) одной командой. кроме того, ответ последует не мгновенно, а не менее, чем через 4/30 секунды (approx 0.1333s), если, конечно, не прибегать к передаче сигналов со сверхсветовыми скоростями.

  8. 12
    Валерий Волков ответил:

    Ответ от сервера последует мгновенно… насколько позволит пропускная способность канала, связывающая тебя с MSSQL сервером….
    может вопрос опять недопонят?

  9. 11
    Валерий Волков ответил:

    Так а что мешает выполнить скрипт в QA?:

    create table TT1 (C1 int not null primary key)
    create table TT2 (C1 int not null primary key)
    alter table TT1 add C2 int not null default(0) references TT2 (C1)
    alter table TT2 add C2 int not null default(0) references TT1 (C1)

  10. 10
    Леонид Максимов ответил:

    автор жжот, вопрос не был понят. я заранее знаю, _что_ мне нужно. другое дело, что некоторые таблицы ссылаются друг на друга и банальными create table здесь не обойтись.

    итак, пусть, по-прежнему, требуется создать только две таблицы. и сервер, пусть, расположен на строго на противоположной стороне шарика. как наиболее быстро создать две приводившиеся ранее таблицы на том далеком сервере? например, за четверть секунды (с получением ответа удаленного сервера)?

  11. 9
    Валерий Волков ответил:

    declare @crt varchar(255)
    declare @ar varchar(255)
    declare @exec varchar(255)

    set @crt='create table TT@n (C1 int not null primary key)'
    set @ar='alter table TT@n add C2 int not null default(0) references TT@m (C1)'
    declare @n int, @max int

    set @max=100

    set @n=1 set @n=2
    set @exec =replace(@crt,'@n',cast(@n as varchar(25)))
    print @exec
    exec(@exec)

    while @n<@max
    begin
    set @exec =replace(@crt,'@n',cast(@n as varchar(25)))
    print @exec
    exec(@exec)

    set @exec =replace(replace(@ar,'@n',cast(@n-1 as varchar(25))),'@m',cast(@n as varchar(25)))
    print @exec
    exec(@exec)
    set @n=@n+1
    end

    set @exec =replace(replace(@ar,'@n',cast(@n-1 as varchar(25))),'@m','1')
    print @exec
    exec(@exec)

  12. 8
    Валерий Волков ответил:

    Указываешь значение в @max=10000
    и получаешь очень много таблиц со ссылками …. одна указывает на другую… :)

  13. 7
    Леонид Максимов ответил:

    #3, Валерий [Папа-Вольт] Волков

    > 1. Какого рода ссылки подразумеваются?
    > 2. Какие из таблиц будут создаваться.. временные или постоянные?
    > 3. Как часто таблицы будут создаваться?

    1. например, требуется наиболее быстро получить вот такое:
    create table T1 (C1 int not null primary key, C2 int not null references T2 (C1))
    create table T2 (C1 int not null primary key, C2 int not null references T1 (C1))
    2. постоянные
    3. не суть важно

  14. 6
    Валерий Волков ответил:

    #6 IP адрес – это хорошо… netbios тоже, а вот аутентификация какая? На уровне mssqlили windows authentification?

    интегрированная (windows) sql2000:"Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DataBase1;Data Source=SERVERNAME1"
    интегрированная (windows) sql2005:"Provider=SQLNCLI.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DB2005;Data Source=SQLSERVER2005"

    MSSQL:"Provider=SQLOLEDB.1;Persist Security Info=False;User ID=user1;Initial Catalog=DataBase1;Data Source=SERVERNAME1;Password=suser1"

    MSSQL2005:"Provider=SQLNCLI.1;Persist Security Info=False;User ID=suser;Initial Catalog=DB2005;Data Source=SQLSERVER2005;Password=suser2"

    В место имени сервера легко подставляется IP адрес…. чтобы без особых проблем использовать нетбиос имена – лучше их прописывать вместе с доменом…. ну или на клиентских машинах прописывать алиасы….(между прочим в алиасах можно указывать как нетбиос имя так и сетевой адрес)

  15. 5
    Alexander Zubakov ответил:

    Соединяюсь с MSSQL через ADO. Сервер расположен на компьютере, IP которого известно. Интересует, как будет выглядеть connection string. Хотелось бы вариант с IP-адресом и именем NetBIOS.

  16. 4
    Валерий Волков ответил:

    #3
    Смотрите в MSSQL 2005… ;)

  17. 3
    Валерий Волков ответил:

    #2
    1. Какого рода ссылки подразумеваются?
    2. Какие из таблиц будут создаваться.. временные или постоянные?
    3. Как часто таблицы будут создаваться?

    ЗЫ:
    CREATE TABLE xxx….. :)
    ЗЫ2: конкретизируйте вопросы :)

  18. 2
    Артём Шалхаков ответил:

    Поддержка XQuery тама есть? С валидацией по RELAX-NG/Schematron, естественно.

  19. 1
    Леонид Максимов ответил:

    требуется создать большое количество ссылающихся друг на друга таблиц. как это сделать максимально быстро?

Клуб программистов работает уже ой-ой-ой сколько, а если поточнее, то с 2007 года.