В настоящее время у меня есть пакетный файл, и я пытаюсь заставить его записать дату, время и имя пользователя в SQL серверную базу данных при запуске. К сожалению, дата и время остаются пустыми в SQL базе данных сервера, где имя пользователя правильно записывается в базу данных.
Запускаемый пакетный файл можно увидеть ниже:
<!-- :
Color 0A
@echo off
Set SearchDate = %Date%
Set UserSearchName = %UserName%
Set SearchTime = %Time%
sqlcmd -S LAPTOP\MSSQLSERVER02 -d AuditLog -E -Q " EXEC dbo.AuditLogCustomerIDTest4 '%SearchDate%', '%UserName%','%SearchTime%' "
Подпроцедура Sql, на которую ссылаются из пакетного файла (dbo.AuditLogCustomerIDTest4), представлена ниже:
CREATE PROCEDURE dbo.AuditLogCustomerIDTest4
@SearchDate nvarchar (30) = Null,
@UserSearchName nvarchar (30) = Null,
@SearchTime nvarchar (30) = Null
AS
Insert Into UserSearches ([SearchDate],[UserSearchName],[SearchTime])
Values ((@SearchDate),(@UserSearchName),(@SearchTime));
Типы данных для каждой из переменных:
1. UserSearchName(varchar(255),null)
2. SearchDate(varchar(255),null)
3. SearchTime(varchar(255),null)
Кто-нибудь знает, почему значения даты и времени отображаются пустыми в базе данных SQL Server? Любая помощь будет принята с благодарностью.