AllowZeroLength

giovedì 30 novembre 2006 - 17.06

freecex Profilo | Newbie

Salve a tutti....

.....sto letteralmente impazzendo.....

Spiego la problematica.

Ho creato una dll che contiene la definizione di tutte le tabelle del mio db access e l'elenco di tutti gli aggiornamenti dei campi.
Tale dll viene lanciata al login e aggiorna automaticamente qualsiasi db di ogni mio cliente al fine di incorrere in spiacevoli siutuazioni (es. mi dimentico qualche campo....o qualche tabella dai clienti che non vado a trovare piu' spesso).

Il problema nasce coi campi varchar: devo trovare un modo per settare la classica proprieta' "Consenti lunghezza a 0" = si altrimenti Access in automatico la mette a no con tutti i problemi che conseguono.

Girando per i vari forum ho realizzato la seguente soluzione:

Imports Interop
Imports Interop.ADOX
Imports Interop.ADODB

Try

Dim Cn As Connection = New Connection

Dim Cat As Catalog = New Catalog
Dim objTable As Table = New Table
Dim Col As Column = New Column
Dim StringaAZL As String
Dim Proprieta As Interop.Property

StringaAZL = "Jet OLEDB:Allow Zero Length"

Cn.Open(Connessione.ConnessioneLocale.ConnectionString)
Cat.ActiveConnection = Cn

For Each objTable In Cat.Tables
If Not objTable.Name Like "MS*" And Not objTable.Name Like "__*" Then
For Each Col In objTable.Columns
If Not Col.Name Like "__*" Then
If Col.Type = ADOX.DataTypeEnum.adVarWChar Then
If Cat.Tables(objTable).Columns(Col).Properties(StringaAZL).Value = False Then
Cat.Tables(objTable).Columns(Col).Properties(StringaAZL).Value = True
End If
End If
End If
Next Col
End If
Next objTable

Col = Nothing
objTable = Nothing
Cat = Nothing
Cn.Close()

Cn = Nothing
Catch Ex As System.Exception

End Try

Funziona "tutto"....mi connetto al DB, vedo l'inseieme delle tabelle (ho escluso con il primo if le tabelle di sistema di Access) e per ognuna l'insime delle colonne e delle colonne Varchar che sono quelle che teoricamente hanno la proprieta AllowZeroLenght......

Il problema e' che in debug non vedo assolutamente l'insieme delle Properties delle colonne e di conseguenza l'ultimo if genera sempre errore......

Qualcuno saprebbe aiutarmi????
la cosa sarebbe importante......e mi sta snervando......

Spero di essere stato chiaro...

Grazie mille a tutti....
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5