Comment puis-je get l'heure actuelle et l'entrer dans le server SQL. Il y a ma table:
CREATE TABLE [dbo].[Audit]( [PK_Audit] [int] IDENTITY(1,1) NOT NULL, [SequenceNumber] [int] NOT NULL, [TableName] [varchar](50) NOT NULL, [RunDate] [datetime] NOT NULL, [StartTime] [datetime] NOT NULL, [EndTime] [datetime] NOT NULL, [Description] [varchar](max) NULL, [Status] [varchar](50) NOT NULL, [ProcessName] [nchar](10) NOT NULL, [InsertCount] [int] NOT NULL, [UpdateCount] [int] NULL, [DeleteCount] [int] NULL, CONSTRAINT [PK_Audit] PRIMARY KEY CLUSTERED ( [PK_Audit] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
J'essaie d'utiliser calander pour avoir le time et l'entrer dans la database:
Calendar cal = Calendar.getInstance(); java.util.Date start = cal.getTime();
Pour moi, il semblait que vous deviez le convertir en quelque chose que SQL comprend, donc j'ai fait ce qui suit:
audit.setDate(4, new java.sql.Date(start.getTime()));
Lorsque j'exécute la requête, j'obtiens l'erreur suivante:
com.microsoft.sqlserver.jdbc.SQLServerException: Ssortingng or binary data would be truncated.
Qu'est-ce que je fais mal?
Vous pouvez utiliser la fonction SQL Server getdate()
:
update Audit set StartTime=getdate(), . . . where . . .
ou
insert into Audit (StartTime, . . .) values (getdate(), . . .)