![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
I have a directory access server created with the following command: CREATE SERVER "createqadboutput" CLASS 'DIRECTORY' USING 'ROOT=/ tmp;READONLY=YES'; CREATE EXTERNLOGIN "DBA" TO "createqadboutput"; CREATE EXISTING TABLE "DBA"."LinuxTmp" AT 'createqadboutput;;;.'; Which then defines the external table with these columns: CREATE EXISTING TABLE "DBA"."LinuxTmp" ( "permissions" VARCHAR(10) NOT NULL, "size" BIGINT NOT NULL, "access_date_time" "datetime" NOT NULL, "modified_date_time" "datetime" NOT NULL, "create_date_time" "datetime" NOT NULL, "owner" VARCHAR(20) NOT NULL, "file_name" VARCHAR(4096) NOT NULL, "contents" LONG BINARY NOT NULL ) AT 'createqadboutput;;;.'; Then I do the following select and it works using SQL Anywhere 11.0.1.2222: select * from dba.LinuxTmp where file_name = 'createQADB.txt'; permissions,size,access_date_time,modified_date_ti me,create_date_time,owner,file_name,contents '-rw-rw-rw-',2026,'2009-09-09 13:06:09.000','2009-09-09 07:49:03.000','2009-09-09 07:49:03.000','sybase','createQADB.txt', Now I applied patch 2279 so the databsae is at 11.0.1.2279 running on CentOS 5.3 (RedHat 5.3). WhenI run the same query it does not come back with anything. With patch 2279 the only way I can make it work is by casting the "file_name". select * from dba.LinuxTmp where cast(file_name as varchar) = 'createQADB.txt'; -- This works select * from dba.LinuxTmp where file_name = 'createQADB.txt'; -- This does not work Is this a bug that patch 2279 introduced where it is required to cast the file_name? This does not seem to affect any other proxy tables to SQL Anywhere databases but just Directory Access Servers. |
#3
| |||
| |||
|
|
I have a directory access server created with the following command: CREATE SERVER "createqadboutput" CLASS 'DIRECTORY' USING 'ROOT=/ tmp;READONLY=YES'; CREATE EXTERNLOGIN "DBA" TO "createqadboutput"; CREATE EXISTING TABLE "DBA"."LinuxTmp" AT 'createqadboutput;;;.'; Which then defines the external table with these columns: CREATE EXISTING TABLE "DBA"."LinuxTmp" ( "permissions" VARCHAR(10) NOT NULL, "size" BIGINT NOT NULL, "access_date_time" "datetime" NOT NULL, "modified_date_time" "datetime" NOT NULL, "create_date_time" "datetime" NOT NULL, "owner" VARCHAR(20) NOT NULL, "file_name" VARCHAR(4096) NOT NULL, "contents" LONG BINARY NOT NULL ) AT 'createqadboutput;;;.'; Then I do the following select and it works using SQL Anywhere 11.0.1.2222: select * from dba.LinuxTmp where file_name = 'createQADB.txt'; permissions,size,access_date_time,modified_date_ti me,create_date_time,owner,file_name,contents '-rw-rw-rw-',2026,'2009-09-09 13:06:09.000','2009-09-09 07:49:03.000','2009-09-09 07:49:03.000','sybase','createQADB.txt', Now I applied patch 2279 so the databsae is at 11.0.1.2279 running on CentOS 5.3 (RedHat 5.3). WhenI run the same query it does not come back with anything. With patch 2279 the only way I can make it work is by casting the "file_name". select * from dba.LinuxTmp where cast(file_name as varchar) = 'createQADB.txt'; -- This works select * from dba.LinuxTmp where file_name = 'createQADB.txt'; -- This does not work Is this a bug that patch 2279 introduced where it is required to cast the file_name? This does not seem to affect any other proxy tables to SQL Anywhere databases but just Directory Access Servers. |
![]() |
| Thread Tools | |
| Display Modes | |
| |