Middle
Loetlege JDBC-s kasutatavate peamised andmetüübid ja selgitage, kuidas need on seotud Java andmetüüpidega.
sobes.tech AI
Vastus AI-lt
| SQL datu tipi | Java datu tipi | Apraksts |
|---|---|---|
CHAR, VARCHAR, LONGVARCHAR |
String |
Rakstzīmju virknes |
NUMERIC, DECIMAL |
BigDecimal |
Fiksētas punkta skaitļi |
BIT, BOOLEAN |
boolean |
Loģiskās vērtības |
TINYINT |
byte |
Vesels skaitlis no -128 līdz 127 |
SMALLINT |
short |
Vesels skaitlis no -32768 līdz 32767 |
INTEGER |
int |
Vesels skaitlis |
BIGINT |
long |
Liels vesels skaitlis |
REAL |
float |
Viena precizitātes peldošā komata skaitlis |
FLOAT, DOUBLE |
double |
Dvīņu precizitātes peldošā komata skaitlis |
BINARY, VARBINARY, LONGVARBINARY |
byte[] |
Binārie dati |
DATE |
java.sql.Date |
Datums (gads, mēnesis, diena) |
TIME |
java.sql.Time |
Laiks (stunda, minūte, sekunde) |
TIMESTAMP |
java.sql.Timestamp |
Datums un laiks ar milisekundēm |
BLOB |
java.sql.Blob |
Liels binārais objekts |
CLOB |
java.sql.Clob |
Liels rakstzīmju objekts |
ARRAY |
java.sql.Array |
Masīvs ar vērtībām |
STRUCT |
java.sql.Struct |
Strukturēts tips |
REF |
java.sql.Ref |
Atsauce uz strukturētu tipu |
DATALINK |
java.net.URL |
Atsauce uz ārēju resursu |
JAVA_OBJECT |
Object |
Java serializēts objekts (atkarīgs no realizācijas) |
ROWID |
java.sql.RowId |
Rindas identifikators (atkarīgs no DBMS) |
NCHAR, NVARCHAR, LONGNVARCHAR |
String |
Nacionālas rakstzīmju virknes |
NCLOB |
java.sql.NClob |
Nacionāls rakstzīmju objekts ar lielu apjomu |
SQLXML |
java.sql.SQLXML |
XML dati |
JDBC (Java Database Connectivity) standarts nosaka standarta SQL datu tipus java.sql.Types klasē. Šie tipi ir skaitliskas konstantes. JDBC draiveri šos SQL tipus kartē uz atbilstošiem Java datu tipiem datu lasīšanai un rakstīšanai:
// Piemērs, kā iegūt datus no ResultSet
String name = rs.getString("column_name_varchar");
int id = rs.getInt("column_name_integer");
BigDecimal value = rs.getBigDecimal("column_name_numeric");
Date date = rs.getDate("column_name_date");
// Piemērs, kā iestatīt parametrus PreparedStatement
pstmt.setString(1, name);
pstmt.setInt(2, id);
pstmt.setBigDecimal(3, value);
pstmt.setDate(4, date);
JDBC cenšas nodrošināt maksimālu saderību, bet specifiski vai ražotāja atkarīgi datu tipi var prasīt īpašus pieejas veidus vai getObject() / setObject() metožu izmantošanu, pēc tam veicot tipu pārvēršanu vai instanceof pārbaudes.