| |
|
|
 Christof Neuß | ¡Hola,
veces otra vez una Cuestión a SQL con uno Access-Datenbank en el Hintergrund. Yo möchte simplemente el Felder UND DEREN ART una cierta Tabla abfragen.
In VBA va el wohl así:
¿Cómo se puede Yo el porque traducir? Oder sabe alguien una otro Möglichkeit? |
|
|
| |
|
|
|
 | Yo zumindest habe de Access-Datenbanken y VBA ni idea. ^ ^ |
|
|
| |
|
|
|
 Uwe ''Pascal'' Niemeier | Yo bin's veces otra vez 
window 600,600
def %SQL_HANDLE_STMT 3
def %SQL_NTS -3
var File$="D:\Archive\Einstellungen\Alcatel 701\Nachricht.mdb"
var Name$="Inbox"
var Init$="Driver={Microsoft Access Driver (*.mdb)};Dbq="+File$
var Command$="SELECT TOP 1 * FROM "+Name$
db("SQLInit",Init$)
declarar Handle&
external("odbc32.dll","SQLAllocHandle",%SQL_HANDLE_STMT,&SQLDBC,addr(Handle&))
external("odbc32.dll","SQLExecDirect",Handle&,Command$,%SQL_NTS)
declarar Count&
external("odbc32.dll","SQLNumResultCols",Handle&,addr(Count&))'--Anzahl Felder
declarar Texto#:dim Texto#,255
declarar a&,b&,c&,d&,e&
whileloop 1,Count&
cls
external("odbc32.dll","SQLDescribeCol",Handle&,&bucle,Texto#,255,addr(a&),addr(b&),addr(c&),addr(d&),addr(e&))
external("oleaut32.dll","VarI4FromI2",b&,addr(b&))'--Umwandlung de SHORT después de LONG
imprimir "Index ",&bucle
imprimir "Name ",cadena$(Texto#,0)
imprimir "NameLength ",a&
imprimir "DataType ",b&
imprimir "ColumnSize ",c&
imprimir "DecimalDigits ",d&
imprimir "Nullable ",e&
imprimir
imprimir "<ENTER>"
waitkey
endwhile
imprimir "Fertig"
external("odbc32.dll","SQLFreeHandle",%SQL_HANDLE_STMT,Handle&)
db("SQLDone")
disponer Texto#
waitkey
end
'
'Referencia:
'DataType es vom Typ SQLSMALLINT
'En negativen Werten se por lo tanto beim Auslesen el Vorzeichen-Bit no korrekt umgesetzt!
'Umwandlung de SHORT después de LONG es nötig!
SQL_UNKNOWN_TYPE =0;
SQL_CHAR =1;
SQL_NUMERIC =2;
SQL_DECIMAL =3;
SQL_INTEGER =4;
SQL_SMALLINT =5;
SQL_FLOAT =6;
SQL_REAL =7;
SQL_DOUBLE =8;
SQL_DATETIME =9;
SQL_TIME =10;
SQL_TIMESTAMP =11;
SQL_VARCHAR =12;
SQL_LONGVARCHAR =(-1);
SQL_BINARY =(-2);
SQL_VARBINARY =(-3);
SQL_LONGVARBINARY =(-4);
SQL_BIGINT =(-5);
SQL_TINYINT =(-6);
SQL_BIT =(-7);
window 600,600
$H Windows.ph
$H ocx3a.ph
$I ocx3a.inc
ocxInit()
var File$="D:\Archive\Einstellungen\Alcatel 701\Nachricht.mdb"
var Name$="Inbox"
var Connect$="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+File$
var Command$="Select TOP 1 * from "+Name$
var Rec&=ocxCreate("ADODB.Recordset")
ocxMethod(Rec&,"Open",Command$,Connect$)
var Fields&=ocxget(Rec&,"Fields")'---"Fields" sin Parámetro: Fields-Collection
var Count%=ocxGet(Fields&,"Count")'--Anzahl Felder en Collection
ocxRelease(Fields&)
declarar Feld&
whileloop 0,Count%-1
cls
Feld&=ocxGet(Rec&,"Fields",&bucle)'--"Fields" con Parámetro: einzelne Felder después de 0-Index
imprimir "Index : ",&bucle
imprimir "Name : ",ocxGet(Feld&,"Name")
imprimir "Type : ",ocxGet(Feld&,"Type")
imprimir "Value : ",left$(ocxGet(Feld&,"Value"),40)'--Inhalt en 40 Signo gekürzt
imprimir "DefinedSize: ",ocxGet(Feld&,"DefinedSize")'------Deklarierte Größe
imprimir "ActualSize : ",ocxGet(Feld&,"ActualSize")'-------Verwendete Größe
imprimir
imprimir "<ENTER>"
ocxRelease(Feld&)
waitkey
endwhile
ocxMethod(Rec&,"Close")
ocxRelease(Rec&)
ocxDeInit()
imprimir "Fertig"
waitkey
end
'Werte para DataTypen en MSDN bajo
'https://msdn.microsoft.com/en-us/library/windows/desktop/ms675318(v=VS.85).aspx
Offtopic @ IF: Leerzeilen en el Ver código fuente wären hilfreich 
HTH Pascal |
|
|
| |
|
|
|
 Christof Neuß | Und otra vez bin Yo por Usted una Schritt más.
DANKE!!!! |
|
|
| |
|
|
|
 | |
|
| |
|
|
|
 Nico Madysa | [OFFTOPIC] Zeilen, no Signo, IF.  [/OFFTOPIC] |
|
|
| |
|
|
|
 | Oh! Sí, natürlich -
Fuente voluntad sí gezeilt ^ ^ -
bau Yo otra vez una Flag para una.
Lo son (aber) auch el Quelltextmerker si uno 1:1-Fuente braucht: [...]  |
|
|
| |
|
|