Avatar billede gravbamzula Nybegynder
12. september 2001 - 14:02 Der er 13 kommentarer og
1 løsning

Paradox??

Jeg har en Paradoxdatabase med følgende struktur

Field name type size key

nr  A  51  *
min  N
max  N

Jeg ønsker at slette records og har prøvet på følgende måde

DELETE FROM tabel WHERE nr=30

Det ser ikke ud til at virke sikkert fordi det er et key felt

følgende virker

DELETE FROM tabel WHERE min=3

er der nogen som ved hvordan Sql strengen skal se ud for et key felt ?
Avatar billede terry Ekspert
12. september 2001 - 14:04 #1
what is this?

nr  A  51  *

Avatar billede martinlind Nybegynder
12. september 2001 - 14:06 #2
Det er ikke fordi det er et key field, det må være fordi den er låst af en anden table / connection, husk at hvis du har noget designtime kørende i delphi evt. en åben dbconnection, så låser den stadig selv om du har lukket, du skal lukke delphi helt for at den slipper
Avatar billede martinlind Nybegynder
12. september 2001 - 14:08 #3
det er sku da fordi du skal skrive sådan :

DELETE FROM tabel WHERE nr=\'30\'

Nr er jo en steng kom jeg lige til at se, prøv med \'\' omkring, det hjælper nok

Avatar billede gravbamzula Nybegynder
12. september 2001 - 14:08 #4
martinlind>> Det er ikke derfor!!
Avatar billede terry Ekspert
12. september 2001 - 14:09 #5
martinlind> Why should this be the case for
DELETE FROM tabel WHERE nr=30

but not

DELETE FROM tabel WHERE min=3

???

Avatar billede terry Ekspert
12. september 2001 - 14:11 #6
Is nr a text field? If so then I agree with martinlind that you should use

DELETE FROM tabel WHERE nr=\'30\'
or
DELETE FROM tabel WHERE nr=\"30\"





Avatar billede gravbamzula Nybegynder
12. september 2001 - 14:13 #7
martinlind>> Tak skal du ha, men jeg skal slette alle der starter med \"30\" f.eks 304543, 3056456, 304324. Hvad skla jeg så skrive??
Avatar billede terry Ekspert
12. september 2001 - 14:13 #8
You should have no problem at all deleting a record where the where referes to a key field, what would you do if it was the only field in the table?
Avatar billede terry Ekspert
12. september 2001 - 14:15 #9
That wasnt your original question graybamzula!
DELETE FROM tabel WHERE nr like \"30\"







Avatar billede terry Ekspert
12. september 2001 - 14:19 #10
did you solve your problem, if so then I cant see what martinlins answer has to do with >

\"jeg skal slette alle der starter med \"30\" f.eks 304543, 3056456, 304324. Hvad skla jeg så skrive??\"
Avatar billede terry Ekspert
12. september 2001 - 14:20 #11
This is for free!

DELETE FROM tabel WHERE nr like \'30*\'
Avatar billede gravbamzula Nybegynder
12. september 2001 - 14:22 #12
terry>> Martinlind løste mit org. spørgmål. Men mange tak for hjælpen
Avatar billede martinlind Nybegynder
12. september 2001 - 15:24 #13
Jeg ved ikke om du kan bruge \'30*\' ellers kan du bruge \'30%\'.

For øvrigt bør du overveje at ændre dit keyfield til en numerisk type, det vil gøre din index fil mindre og dine søgninger hurtigere

/Martin
Avatar billede terry Ekspert
12. september 2001 - 15:27 #14
Thats more than likely correct martinlind. I have very little experience with Parodox, but it is jsut SQL we are talking here. I think the * is Access, where as most other dB\'s use %.

mvh
Terry
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester