See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 12402|Vastuse: 3

[Allikas] Uuenda SQL Serveri andmebaasis isekasvava ID veeru töömeetodit

[Kopeeri link]
Postitatud 23.08.2018 12:20:44 | | | |
Igapäevases SQL Serveri arenduses kasutatakse identiteeditüübi identiteediveergu sageli tabelistruktuuri isekasvava arvuna. Näiteks artikli number, plaadi seerianumber jne. Viited isekasvavatele tuvastatud veergudele hõlbustavad oluliselt andmebaasiprogrammide arendamist, kuid mõnikord võib see kangekaelne väljatüüp põhjustada ka probleeme.

1. Muuda identifitseerimisveeru välja väärtusi:

Mõnikord, et funktsiooni ellu viia, tuleb muuta isekasvava identiteedi tüüpi välja väärtust, kuid see operatsioon ei ole vaikimisi lubatud identiteediveeru tüübi tõttu. Näiteks, kui andmebaasi lisatakse tavaliselt 5 andmetükki ja 2 kustutatakse sel hetkel, siis kui andmed lisatakse uuesti, määratakse isekasvav identifitseerimisveerg automaatselt väärtuseks 6, kuid kui soovid andmete sisestamisel määrata väärtuseks 3, siis vaikimisi see ei ole lubatud. Kui soovid selle välja väärtust muuta, saad täielikult kontrollida identifitseerimisvälja väärtuse lisamist, meetodid on endiselt olemas, haha.

PANE IDENTITY_INSERT /[LAUD/] [SISSE| VÄLJAS]
Ülaltoodud lause abil saate hõlpsasti kontrollida, kas tabelis isekasvav identifikaatori veerg automaatselt kasvab, st kas teil on lubatud käsitsi määrata identifikaatori veeru väärtus kirje lisamisel. Kui see on määratud nagu peal, saad sisestamisel määrata identifitseeriva veeru välja väärtuse, mis ei kasvata automaatselt määratud väärtust. Loomulikult, kui kasutad selle ära, pead seda lauset kasutama, et vaikimisi oleku lüliti välja lülitada, muidu ei suurenda väli automaatselt määratud väärtust, kui järgmine kord andmeid sisestad.

2. Lähtesta identifitseerimisveeru välja väärtus:

Kui osa andmekirjest kustutatakse ja hiljem lisatakse uus andmekirje, on identifitseerimisveeru väärtusel pikk vaba aeg, mis näeb väga ebameeldiv välja. Isegi kui kustutad kõik tabeli kirjed, kasvab identiteediveeru väärtus automaatselt ja lõputult, mitte ei kasva nullist. Isekasvava põllu seemneväärtust saab lähtestada järgmise väitega:

DBCC CHECKIDENT(TABEL, [RESEED| NORESEED], [1])
Ülaltoodud väide sunnib määratud tabeli seemneväärtuse lähtestama väärtusele 1. Kui sa aga ei taha seemnet nullida väärtusele 1, võid kolmanda parameetri asendada soovitud seemneväärtusega. Kui tahad teada praegust seemet, selle asemel et tuvastatud seemet lähtestada, pead kasutama NORESSEEDi kolmanda parameetri asemel.




Eelmine:SQL Server 2012 veergud automaatselt kasvavad, millel on väärtuse hüppe probleemid
Järgmine:Windows ei käivita Redis teenust, viga 1067: Protsess lõpeb ootamatult.
 Üürileandja| Postitatud 23.08.2018 12:57:08 |
1. Kui kõik tabelis olevad andmed kustutatakse, tõstetakse see automaatselt nullini. ( lühendatud tabel TableName )

2. Ära kustuta tabeli andmeid, vaid lähtesta automaatse kasvu väärtus otse. ( DBCC CHECKIDENT('TableName', RESEED, 0)
 Üürileandja| Postitatud 23.08.2018 13:01:32 |
 Üürileandja| Postitatud 13.02.2019 09:59:15 |
Vaata isekasvavate veergude praeguseid väärtusi tabelis:
    DBCC CHECKIDENT (TableName)

Muuda tabelis isekasvava veeru praegust väärtust:
    DBCC CHECKIDENT (TableName, RESEED, väärtus)
    RESSEED ei ole veeru nimi, see on kirjutatud fikseeritud viisil.


Näiteks, kui tahan muuta Division tabeli isekasvava veeru praegust väärtust 30-ks, saan kasutada järgmist käsku
DBCC CHECKIDENT (Divisjon, RESEED, 30)
Seejärel kasuta
DBCC CHECKIDENT (divisjon)
Näete, et praegune väärtus on 30
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com