国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Type date/heure JDBC
P粉486138196
P粉486138196 2023-12-27 20:52:41
0
1
672

J'ai une valeur DATETIME 列。我使用 ResultSet 元數(shù)據(jù)來(lái)檢索列類型,它返回 TIMESTAMP 這是不正確的。如何獲取此列的正確 java.sql.SQLType dans une base de données MySQL ?

Je vais essayer d'être plus précis. Je définis la structure de la base de données en utilisant du code Java. Par exemple?;

Column TITLE = new Column(JDBCType.VARCHAR).size(100).title("Created");

Ensuite, mon petit code de validation crée cette colonne (en supposant que la table y soit définie). Puis plus tard si je modifie ce code en

Column TITLE = new Column(JDBCType.VARCHAR).size(200).title("Created");

Mon petit validateur modifie la taille de la colonne à 200. Pour ce faire, je récupère les métadonnées sous forme de

DatabaseMetaData metaData = connection.getMetaData();

Accédez ensuite aux propriétés de la colonne

ResultSet resultSet = metaData.getColumns(getCatalog(), schema, table, columnName);

Cela renverra la classe JDBCType 枚舉。假設(shè)我在 MySQL DATETIME 列上運(yùn)行此查詢。我確實(shí)知道在Java中沒(méi)有這樣的東西,它的等價(jià)物是 java.sql.Timestamp. Mais dans MySQL, DATETIME n'est pas TIMESTAMP.

Comment différencier MySQL DATETIME和MySQL TIMESTAMP en code Java ?

P粉486138196
P粉486138196

répondre à tous(1)
P粉338969567

D'un point de vue générique JDBC, vous pouvez utiliser la colonne DatabaseMetaData .getColumns(...)DatabaseMetaData .getColumns(...), cela devrait renvoyer?:

En d'autres termes, il doit contenir le nom du type de données utilisé dans la source de données (dans votre cas, MySQL doit renvoyer DATETIMEDATETIME).

Remarque?: je n'ai pas réellement vérifié cela, ma réponse est uniquement basée sur les exigences génériques de JDBC.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal