Toon posts:

[SQL ASP] Kolomnamen met spaties en speciale tekens uitlezen

Pagina: 1
Acties:
  • 564 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
In ASP moet ik een Access database uitlezen waarbij een kolomnaam de volgende naam heeft: "actief(1) onactief(0)".

In ASP.NET kan ik er gewoon haken [] omheenzetten en het werkt maar hoe werkt dit in Classic ASP?

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 14:25

Janoz

Moderator Devschuur®

!litemod

Die gruwlijke kolomnaam doet mij vermoeden dat er heel erg veel mis is met het database ontwerp. Dit zal dan ook 1 van de simpelste problemen zijn waar je de komende tijd tegenaan zult gaan lopen.

Heb je die blokhaken trouwens al geprobeerd?

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Verwijderd

Topicstarter
Janoz schreef op donderdag 30 november 2006 @ 13:37:
Die gruwlijke kolomnaam doet mij vermoeden dat er heel erg veel mis is met het database ontwerp. Dit zal dan ook 1 van de simpelste problemen zijn waar je de komende tijd tegenaan zult gaan lopen.

Heb je die blokhaken trouwens al geprobeerd?
Database ontwerp is inderdaad zeer slecht! Maar ze krijgen iedere maand een database aangeleverd van de leverancier. Natuurlijk is het iedere keer aanpassen van de kolomnaam een optie maar dat vind ik niet zo'n nette oplossing.

Met de blokhaken erom heen krijg ik het volgende:

Microsoft JET Database Engine error '80040e10'

Waarden voor een of meer vereiste parameters ontbreken.

/testpage.asp, line 13

Access maakt er wel het volgende:
SELECT tabel.[actief (1)/nietactief(0)]
FROM tabel;

[ Voor 7% gewijzigd door Verwijderd op 30-11-2006 14:05 ]


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 14:04

TeeDee

CQB 241

Hoe zie je SQL query eruit?
Wat staat er op regel < 13 :?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Die blokhaken hebben bovendien niets te maken met ASP of ASP.NET, maar met T-SQL. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
TeeDee schreef op donderdag 30 november 2006 @ 13:44:
Hoe zie je SQL query eruit?
Wat staat er op regel < 13 :?
Regel 13 voert een erg simpele SQL Query uit

SELECT tabel.[actief (1)/nietactief (0)]

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Dat is geen volledige query en als het er precies zo staat sowieso verkeerd. Als dit er staat moet het gewoon werken:
SQL:
1
SELECT [actief (1)] FROM [tabel]

Als die / slaat op een deling dan gaat het natuurlijk fout op wat anders, overigens.
SQL:
1
SELECT [actief (1)] / [nietactief (0)] FROM [tabel]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
-NMe- schreef op donderdag 30 november 2006 @ 14:11:
Dat is geen volledige query en als het er precies zo staat sowieso verkeerd. Als dit er staat moet het gewoon werken:
SQL:
1
SELECT [actief (1)] FROM [tabel]

Als die / slaat op een deling dan gaat het natuurlijk fout op wat anders, overigens.
SQL:
1
SELECT [actief (1)] / [nietactief (0)] FROM [tabel]
maar er is één kolomnaam met de volgende naam: "actief (1)] / [nietactief (0)" (zonder de quotes uiteraard).... en ik krijg het niet werkend.

Misschien moet ik, nadat ze de database uploaden opzoek ga naar de tabel en de 6de kolom en die ga aanpassen naar actiefnietactief en dan verder ga..

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 14:04

TeeDee

CQB 241

Je meent serieus dat dat de kolomnaam is? Bij ons wordt zulke rotzooi teruggezonden naar de klant met het vriendelijke doch dringende verzoek het goed aan te leveren.

Probeer 'm eens aan te spreken op de volgende manier:
SQL:
1
select [actief (1)]] / [nietactief (0)] from tabelnaam;

[ Voor 27% gewijzigd door TeeDee op 30-11-2006 15:00 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


  • StevenK
  • Registratie: Februari 2001
  • Laatst online: 19:59
Kun je niet gewoon een
code:
1
select *

Doen en dan de veld op nummer ipv. naam uitlezen ?

Was advocaat maar vindt het juridische nog steeds leuk


  • PhysicsRules
  • Registratie: Februari 2002
  • Laatst online: 31-03 07:26

PhysicsRules

Dux: Linux voor Eenden

Gaat de query fout of kan je ASP(.Net) code het niet in een recordset stoppen. Als het probleem het tweede is zou je misschien kunnen kiezen voor
SQL:
1
select [actief (1)/nietactief(0)] AS BetereNaam from tabel

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Verwijderd schreef op donderdag 30 november 2006 @ 14:54:
[...]

maar er is één kolomnaam met de volgende naam: "actief (1)] / [nietactief (0)" (zonder de quotes uiteraard).... en ik krijg het niet werkend.

Misschien moet ik, nadat ze de database uploaden opzoek ga naar de tabel en de 6de kolom en die ga aanpassen naar actiefnietactief en dan verder ga..
Ik denk dat je beter die leverancier gewoon onder zijn kont kan schoppen en nooit meer iets door hun laten aanleveren, als ie het echt in zijn hoofd haalt een dergelijke kolomnaam te gebruiken. :X Maar de zaak aanpassen is natuurlijk ook een alternatief ja.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 14:04

TeeDee

CQB 241

-NMe- schreef op donderdag 30 november 2006 @ 15:30:
[...]

Ik denk dat je beter die leverancier gewoon onder zijn kont kan schoppen en nooit meer iets door hun laten aanleveren, als ie het echt in zijn hoofd haalt een dergelijke kolomnaam te gebruiken. :X Maar de zaak aanpassen is natuurlijk ook een alternatief ja.
Dat zeg ik :)

Nog even wat getest e.d., maar MS SQL maakt er automatisch [actief (1)]] / [nietactief (0)] van.

Heart..pumps blood.Has nothing to do with emotion! Bored


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op donderdag 30 november 2006 @ 13:32:
In ASP moet ik een Access database uitlezen waarbij een kolomnaam de volgende naam heeft: "actief(1) onactief(0)".
Verwijderd schreef op donderdag 30 november 2006 @ 13:43:
Access maakt er wel het volgende:
SELECT tabel.[actief (1)/nietactief(0)]
Verwijderd schreef op donderdag 30 november 2006 @ 14:54:
maar er is één kolomnaam met de volgende naam: "actief (1)] / [nietactief (0)" (zonder de quotes uiteraard).... en ik krijg het niet werkend.
Wat is het nou?

Los daarvan is dit fieldnaam (zoals eerder gezegd) nogal gaar; maar ik weet uit ervaring dat het een leverancier worst zal zijn in veel gevallen. Zij leveren iets aan; wat je er mee doet moet je zelf weten. Als andere klanten van de leverancier er niet over janken zullen ze waarschijnlijk weinig interesse hebben om het voor je aan te passen. TS zit dus waarschijnlijk opgescheept met dit verhaal; of je de leverancier nou onder zijn kont schopt of niet. (Maar het is natuurlijk wél altijd het proberen waard ;) )

Hmmm, let me rephrase that: Het feit dat je leverancier dit zo aanlevert betekent waarschijnlijk dat de leverancier:
• geen kaas heeft gegeten van wat 'ie (technisch gezien) aanlevert (export)
• geen kaas heeft gegeten van databases
• geen aandacht heeft besteed aan de export of een quick'n'dirty export heeft gemaakt
• maar wat aanrommelt
• ...
Hoe dan ook heeft de leverancier waarschijnlijk een een ander vak geleerd en lijkt me geen ICT-er pur sang. En ik vraag me af of je een leek zo ver krijgt zijn "spul" aan te passen dat het wel (in de ICT-zin van het woord) nuttig is voor ons devvers.

Gezien de fieldnames zou het me overigens niets verbazen als dit uit een CSV import of Excel import komt ;)

[ Voor 65% gewijzigd door RobIII op 30-11-2006 16:06 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 14:04

TeeDee

CQB 241

Helemaal waar, maar als dit een repeterend probleem is/wordt, kan je er imo beter een import-tool voor bouwen welke alles netjes in de db plempt.

Blijft trouwens nog steeds staan:
Probeer 'm eens zo aan te spreken:
SQL:
1
select [actief (1)]] / [nietactief (0)] as naam from tabelnaam;

Maar daar heb ik nog niks over gehoord of dat wel of niet geholpen heeft.

[ Voor 38% gewijzigd door TeeDee op 30-11-2006 16:10 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


  • GX
  • Registratie: Augustus 2000
  • Laatst online: 14-05 09:40

GX

Nee.

Ooit gedacht aan iets van ETL in Access? Gewoon die hele meuk converteren on-receive naar een voor jou zinnige database, die queries hoef je dan maar 1 keer te maken in access (native, wel zo prettig) en dan heb je hier in de toekomst geen zorgen meer mee..
Pagina: 1