Frage : Leerstellen, die in SQL-Tabelle über ADODB eingesetzt werden

Gesamtaufgabe:  Ich lese einen Excel-Verteilungsbogen und bevölkere eine SQL-Datenbank mit den Informationen, die vom Verteilungsbogen gelesen werden.  Das folgende Code-Stückchen zeigt, wie ich zu einem Feld schreibe, das „FirstName“ genannt wird.

„erklären ein recordset
schwaches myTableRS, während ADODB.Recordset
“ recordset
gesetztes myTableRS = neues ADODB.Recordset
'geöffnetes recordset using eine Tabelle in der Datenbank bilden, und das connection
myTableRS.Open „tblContactInformation“, das g_adoCon, adOpenDynamic, adLockPessimistic
myTableRS.AddNew
str = g_WS.Cells (4, 2)
myTableRS.Fields („FirstName“) = StrValue (str)
myTableRS.Update

The Funktion StrValue wird unten gezeigt, aber am wichtigsten trimmt sie, was vom Excel spreadsheet.

Function StrValue (str als Schnur) während String
str = Ordnung (str)
wenn gelesen worden ist (Len (str) = 0) Then
str =“???? „
Ziel If
StrValue = str
End Function

The der Wert, der von StrValue zurückgebracht wird, ist korrekt, aber, sobald er Feldern zugewiesen wird („FirstName“) gibt es Extraam Ende des Feldes.  „FirstName“ wird während ein nvarchar (40) Feld erklärt, das nicht nulls.

Thanks für Ihr help.
annimmt

Antwort : Leerstellen, die in SQL-Tabelle über ADODB eingesetzt werden

>>This veranlaßt jedes Feld, zu sein gefüllt. <>Wirklich ist das nicht, was es angibt.  Hier ist es wieder:

Die Einstellung des SATZES ANSI_PADDING beeinflußt nicht das nchar, das nvarchar, ntext, Text, Bild und großen Wert. Sie anzeigen immer den SATZ ANSI_PADDING AUF Verhalten. Dies heißt, dass abschließende Zwischenraumzeichen und null nicht getrimmt.

So, wenn es abschließende Zwischenraumzeichen gibt, kommt es von Ihrem Code.

Aber mein Wort für es nicht nehmen, prüfen das folgende Heraus in SSMS:
1:
2:
3:
4:
5:
tblContactInformation (FirstName) WERTE („SheahaST ") EINSETZEN

VORWÄHLEN	„|“ + FirstName + „|“
	Vom tblContactInformation
WO	FirstName = „SheahaST“
Weitere Lösungen  
 
programming4us programming4us