簡體   English   中英

如何在SQL語句(NetBeans JavaDB)中使用生成的標識

[英]How to use an generated identity in an SQL statement (NetBeans JavaDB)

我的桌子設置如下:

CREATE TABLE "CAMPAIGNS"
(  "campaignId" INT PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1),
   "campaignName" VARCHAR(200),     
   "campaignLocation" VARCHAR(200),
   "campaignManager" VARCHAR(200)

);

我的INSERT語句應如何顯示,以便可以確保campaignId列自動遞增,並選擇將要輸入到表中的其余值?

只需確保將campaignId INT Auto_Increment然后就不必在這樣的查詢中添加campaignId了:

String query = "INSERT INTO CAMPAIGNS (campaignName, campaignLocation, campaignManager) 
                VALUES (?, ?, ?)";
INSERT INTO CAMPAIGNS (campaignName, CampaignLocation, CampaignManager)
VALUES ('Test','Sofia','Emil')

有時,這取決於數據庫。 但是,將其省略或使用null通常應該可以工作。

insert into CAMPAIGNS(campaignId, campaignName, campaignLocation, campaignManager)
values (null, 'My Campaign', 'Australia','Bob');
PreparedStatement preparedStatement = 
    connect.prepareStatement("INSERT into CAMPAIGNS (campaignName, campaignLocation,campaignManager) VALUES (?,?,?)");

preparedStatement.setString(1, "campaignName");
preparedStatement.setString(2, "campaignLocation");
preparedStatement.setString(3, "campaignManager");

根本不在插入中提及

insert into CAMPAIGNS ( campaignName, campaignLocation, campaignManager) 
values ( 'campaignName_value', 'campaignLocation_value', 'campaignManager_value')

mysql做其余的

PS不要用雙引號

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM