el asunto es que quiero pasar esto:
USE terminal;
CREATE TABLE IF NOT EXISTS terminal.ARQUEO (
IdArq MEDIUMINT(8) UNSIGNED ZEROFILL AUTO_INCREMENT,
CajaNo SMALLINT (3) UNSIGNED ZEROFILL,
FechaIn DATE,
HoraIn TIME,
FechaFin DATE,
HoraFin TIME,
Fianza DECIMAL (6,2),
Total DECIMAL (6,2),
CajaZ DECIMAL (6,2),
PRIMARY KEY (IdArq) )
ENGINE = InnoDB
DEFAULT CHARACTER SET = UTF8;
CREATE TABLE IF NOT EXISTS terminal.ARQX (
IdX SMALLINT (3) UNSIGNED ZEROFILL AUTO_INCREMENT,
IdArq MEDIUMINT (8) UNSIGNED ZEROFILL,
Hora TIME,
PRIMARY KEY (IdX, IdArq),
INDEX IDX_ARQX_IdArq (IdArq),
FOREIGN KEY (IdArq) REFERENCES terminal.ARQUEO (IdArq) )
ENGINE = InnoDB
DEFAULT CHARACTER SET = UTF8;
CREATE TABLE IF NOT EXISTS terminal.ARQUEO (
IdArq MEDIUMINT(8) UNSIGNED ZEROFILL AUTO_INCREMENT,
CajaNo SMALLINT (3) UNSIGNED ZEROFILL,
FechaIn DATE,
HoraIn TIME,
FechaFin DATE,
HoraFin TIME,
Fianza DECIMAL (6,2),
Total DECIMAL (6,2),
CajaZ DECIMAL (6,2),
PRIMARY KEY (IdArq) )
ENGINE = InnoDB
DEFAULT CHARACTER SET = UTF8;
CREATE TABLE IF NOT EXISTS terminal.ARQX (
IdX SMALLINT (3) UNSIGNED ZEROFILL AUTO_INCREMENT,
IdArq MEDIUMINT (8) UNSIGNED ZEROFILL,
Hora TIME,
PRIMARY KEY (IdX, IdArq),
INDEX IDX_ARQX_IdArq (IdArq),
FOREIGN KEY (IdArq) REFERENCES terminal.ARQUEO (IdArq) )
ENGINE = InnoDB
DEFAULT CHARACTER SET = UTF8;
a esto otro:
Try
hConn.Open()
If Not hConn.Databases.Exist(NomDB) Then
hConn.Databases.Add(NomDB)
Wait 0.5
hConn.Close()
hConn.Host = Settings["BASE/RUTA"]
hConn.Name = NomDB
Try
hConn.Open()
TablaDB = hConn.Tables.Add("ARQUEO")
TablaDB.Fields.Add("IdArq", db.Serial)
TablaDB.Fields.Add("CajaNo", db.Integer)
TablaDB.Fields.Add("FechaIn", db.Date)
TablaDB.Fields.Add("HoraIn", db.date)
TablaDB.Fields.Add("FechaFin", db.date)
TablaDB.Fields.Add("HoraFin", db.date)
TablaDB.Fields.Add("Fianza", db.Float)
TablaDB.Fields.Add("Total", db.Float)
TablaDB.Fields.Add("CajaZ", db.Float)
TablaDB.PrimaryKey = ["IdArq"]
TablaDB = hConn.Tables.Add("ARQX")
TablaDB.Fields.Add("IdX", db.Serial)
TablaDB.Fields.Add("IdArq", db.Integer)
TablaDB.Fields.Add("Hora", db.date)
TablaDB.PrimaryKey = ["IdX", "IdArq"]
TablaDB.Update()
hConn.Close()
Endif
Catch
Message.Error(Error.Text & " " & Error.Code)
hConn.Open()
If Not hConn.Databases.Exist(NomDB) Then
hConn.Databases.Add(NomDB)
Wait 0.5
hConn.Close()
hConn.Host = Settings["BASE/RUTA"]
hConn.Name = NomDB
Try
hConn.Open()
TablaDB = hConn.Tables.Add("ARQUEO")
TablaDB.Fields.Add("IdArq", db.Serial)
TablaDB.Fields.Add("CajaNo", db.Integer)
TablaDB.Fields.Add("FechaIn", db.Date)
TablaDB.Fields.Add("HoraIn", db.date)
TablaDB.Fields.Add("FechaFin", db.date)
TablaDB.Fields.Add("HoraFin", db.date)
TablaDB.Fields.Add("Fianza", db.Float)
TablaDB.Fields.Add("Total", db.Float)
TablaDB.Fields.Add("CajaZ", db.Float)
TablaDB.PrimaryKey = ["IdArq"]
TablaDB = hConn.Tables.Add("ARQX")
TablaDB.Fields.Add("IdX", db.Serial)
TablaDB.Fields.Add("IdArq", db.Integer)
TablaDB.Fields.Add("Hora", db.date)
TablaDB.PrimaryKey = ["IdX", "IdArq"]
TablaDB.Update()
hConn.Close()
Endif
Catch
Message.Error(Error.Text & " " & Error.Code)
Pero no encuentro información de como crear la foreign key y en la primari key me he quedado . Alguien sabe donde puedo encontrar información sobre ello, en la doc de gambas no he encontrado nada. Muchas gracias a todos.