안녕하세요. 라이브러리 flexi auth을 설치했으며 대신 SQL Server가 있습니다. 내 문제에 영향을 미친다.) 나는 새 사용자를 삽입 할 때flex_auth 라이브러리를 사용하여 varchar 데이터 형식을 datetime 데이터 형식으로 변환하면 범위가 벗어납니다.
생성 된 쿼리는 다음과 같습니다
INSERT INTO user_accounts (user_accounts.uacc_group_fk,
user_accounts.uacc_email,
user_accounts.uacc_username,
user_accounts.uacc_password,
user_accounts.uacc_ip_address,
user_accounts.uacc_date_last_login,
user_accounts.uacc_date_added,
user_accounts.uacc_activation_token,
user_accounts.uacc_active,
user_accounts.uacc_suspend,
user_accounts.uacc_salt)
VALUES (
1
, '[email protected]'
, 'custom_username'
, '$2a$08$KAFxZfqIDEOkucWAXePpYeQ6BiffjAxvTVv1HuXI3jgvBUo9OEHce'
, '127.0.0.1'
, '2014-10-21 12:01:18'
, '2014-10-21 12:01:18'
, 'faa46e2c45c383611dcb641f69e58144cc01962a'
, 0
, 0
, 'R4GC9hXyWW')
그리고 반환 된 오류는 다음과 같습니다 날짜 형식을 가지고 있기 때문에
[Microsoft][SQL Server Native Client 11.0][SQL Server]The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.
내가 그 이상한 생각 : 'YYYY- MM-DD HH는 : MM : SS '
내 테이블의 설명입니다
[uacc_id] [int] IDENTITY(1,1) NOT NULL,
[uacc_group_fk] [smallint] NOT NULL,
[uacc_email] [varchar](100) NOT NULL,
[uacc_username] [varchar](15) NOT NULL,
[uacc_password] [varchar](60) NOT NULL,
[uacc_ip_address] [varchar](40) NOT NULL,
[uacc_salt] [varchar](40) NOT NULL,
[uacc_activation_token] [varchar](40) NOT NULL,
[uacc_forgotten_password_token] [varchar](40) NOT NULL,
[uacc_forgotten_password_expire] [datetime] NOT NULL,
[uacc_update_email_token] [varchar](40) NOT NULL,
[uacc_update_email] [varchar](100) NOT NULL,
[uacc_active] [tinyint] NOT NULL,
[uacc_suspend] [tinyint] NOT NULL,
[uacc_fail_login_attempts] [smallint] NOT NULL,
[uacc_fail_login_ip_address] [varchar](40) NOT NULL,
[uacc_date_fail_login_ban] [datetime] NOT NULL,
[uacc_date_last_login] [datetime] NOT NULL,
[uacc_date_added] [datetime] NOT NULL,
테이블에있는 컬럼에 널 (null)을 허용하지 않으며 당신이 삽입의 모든 필드를 지정하지 않는 한 당신이 어떤 디폴트 값을 지정합니까? – Tanner
이 쿼리는 SQL Management Studio를 사용하여 작동합니까? 거기에서 실행하려고 할 때 더 좋은 오류 메시지가 나타나거나 오류 메시지가 없어서 다른 장소에서 문제를 찾을 수 있습니다. –