Welcome to Sign in | Help
in Search

strergere din doua tabele???

Last post 07-31-2007, 8:02 PM by B_gd_n[ ]Sahlean. 3 replies.
Sort Posts: Previous Next
  •  07-31-2007, 12:22 PM 2352

    strergere din doua tabele???

    urmatorul DELETE e facut in Access si se sterg campuri din doua talele...

    cum fac asta in sqlServer?...

    DELETE DISTINCTROW ArtStk.ArtNr, ArtStk_Land.*
    FROM ArtStk INNER JOIN ArtStk_Land
    ON ArtStk.StkID = ArtStk_Land.StkID
    WHERE ArtStk.ArtNr = 0

    Multumesc anticipat? 

  •  07-31-2007, 5:46 PM 2355 in reply to 2352

    Re: strergere din doua tabele???

    Comanda DELETE din T-SQL este "mai rigidă" decat cea din Access (de fapt JET).

    Deci comanda DELETE din dialectul SQL implementat in SQL Server  adica din T-SQL nu permite realizarea stergerilor din mai multe tabele.

     Pe scurt nu se poate. Poti folosi urmatoarea secventa VB drept exemplu totusi

    objConexiuneADO.Execute "DELETE FROM Vasile;DELETE FROM Georgel;"

    sau ... 

     

    Access-ul are niste facilitati care bat la "funduleţ" SQL Server-ul.

  •  07-31-2007, 6:06 PM 2356 in reply to 2355

    Re: strergere din doua tabele???

    Bogdan,

    Instrucţiunea respectivă din Access nu şterge din două tabele, ci doar din tabela ArtStk_Land (încearcă dacă nu crezi). Într-adevăr, Access-ul are posibilitatea să şteargă din două tabele printr-o singură instrucţiune, dar acestea trebuie specificate sub forma Tabela.* în clauza DELETE. În plus, e necesar ca tabelele să fie legate printr-o relaţie unu-la-unu (sau să existe indecşii unici necesari pentru o asemenea relaţie).

    Instrucţiunea menţionată de Ioana poate fi scrisă în T-SQL astfel:

    DELETE ArtStk_Land
    FROM ArtStk INNER JOIN ArtStk_Land ON ArtStk.StkID=ArtStk_Land.StkID
    WHERE ArtStk.ArtNr=0

    sau conform sintaxei ANSI:

    DELETE ArtStk_Land
    WHERE StkID IN (SELECT StkID FROM ArtStk WHERE ArtNr=0)

    Răzvan

    Notă: am editat mesajul ulterior postării iniţiale (pentru a preciza cum e posibilă ştergerea din mai multe tabele în Access)

  •  07-31-2007, 8:02 PM 2358 in reply to 2356

    Re: strergere din doua tabele???

    rsocol:

    Bogdan,

    Instrucţiunea respectivă din Access nu şterge din două tabele, ci doar din tabela ArtStk_Land (încearcă dacă nu crezi)...

     Smile Te cred. Mi-a atras atentia titlul si cunoscand anumite diferente privitoare la "comportamentul" comenzilor SQL din Access si SQL Server nu am citit fraza SQL din primul mesaj.

View as RSS news feed in XML
Powered by Community Server (Commercial Edition), by Telligent Systems