Hoe kan ik in een tabel invoegen met verschillende invoer met behulp van / ,met datum datatype?
insert into run(id,name,dob)values(&id,'&name',[what should I write here?]);
Ik gebruik orakel 10g.
Antwoord 1, autoriteit 100%
Aangezien dob
het gegevenstype DATE
is, moet u de letterlijkenaar DATE
converteren met TO_DATE
en het juiste formaatmodel. De syntaxis is:
TO_DATE('<date_literal>', '<format_model>')
Bijvoorbeeld
SQL> CREATE TABLE t(dob DATE);
Table created.
SQL> INSERT INTO t(dob) VALUES(TO_DATE('17/12/2015', 'DD/MM/YYYY'));
1 row created.
SQL> COMMIT;
Commit complete.
SQL> SELECT * FROM t;
DOB
----------
17/12/2015
Een gegevenstype DATE
bevat zowel datum- als tijdelementen. Als u zich geen zorgen maakt over het tijdsgedeelte, kunt u ook de letterlijke ANSI-datum gebruiken, die een vast formaat 'YYYY-MM-DD'
gebruikt en NLS-onafhankelijk is.
Bijvoorbeeld
SQL> INSERT INTO t(dob) VALUES(DATE '2015-12-17');
1 row created.
Antwoord 2, autoriteit 17%
datum moet worden ingevoegd met twee apostrofs’
Bijvoorbeeld als de datum 2018/10/20 is. Het kan van deze zoekopdracht invoegen
Query –
insert into run(id,name,dob)values(&id,'&name','2018-10-20')
Antwoord 3, autoriteit 2%
invoegen in run(id,name,dob)values(&id,’&name’,[wat moet ik schrijven
hier?]);
insert into run(id,name,dob)values(&id,'&name',TO_DATE('&dob','YYYY-MM-DD'));
Antwoord 4
laten we aannemen dat we een tabel Transacties maken met SQL Server Management Studio
txn_id int,
txn_type_id varchar(200),
Account_id int,
Amount int,
tDate date
);
met het gegevenstype datumkunnen we waarden invoegen in een eenvoudig formaat: 'yyyy-mm-dd'
INSERT INTO transactions (txn_id,txn_type_id,Account_id,Amount,tDate)
VALUES (978, 'DBT', 103, 100, '2004-01-22');
Bovendien kunnen we verschillende tijdformaten hebben, zoals
DATE - format YYYY-MM-DD
DATETIME - format: YYYY-MM-DD HH:MI:SS
SMALLDATETIME - format: YYYY-MM-DD HH:MI:SS
Antwoord 5
U kunt ook het gegevenstype “tijdstempel” gebruiken waar het alleen “dd-mm-jjjj” nodig heeft
Vind ik leuk:
insert into emp values('12-12-2012');
aangezien er maar één kolom in de tabel is…
U kunt de invoegwaarden aanpassen aan uw tabel.
Antwoord 6
Ik heb gewoon een ingesloten SQL-programma geschreven om een nieuw record met datumvelden te schrijven.
Het was veruit de beste en kortste zonder fouten. Ik kon aan mijn vereiste voldoen.
w_dob = %char(%date(*date));
exec sql insert into Tablename (ID_Number ,
AmendmentNo ,
OverrideDate ,
Operator ,
Text_ID ,
Policy_Company,
Policy_Number ,
Override ,
CREATE_USER )
values ( '801010',
1,
:w_dob,
'MYUSER',
' ',
'01',
'6535435023150',
'1',
'myuser');