ustimenko (ustimenko) wrote,
ustimenko
ustimenko

  • Mood:
  • Music:

Русские буквы в дате на SQL2005

==сцыла==
http://wiki.nsaem.ru/index.php/%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B5_%D0%B4%D0%B0%D1%82%D1%8B_%D0%B2_MSSQL_2005

==проблема==
Раньше в одной из систем, к-рая работала на win2003 + sql2000 + iis6 + php4 и при настройке mssql.datetimeconvert "1" даты выдавались из базы сразу по-русски.

А потом, када стало то же самое, но sql2005, этого не СТАЛО!!!

==мой путь==
Был долог и труден :)

До этого я говорил коллеге, который занимается базой, чтоб он как-то пофиксил эту странность в базе там или где.

Он сделал у юзера дефолтный язык Russian, но это нифига не помогло...

Потом седня я вцепился в эту шнягу:
- попробовал пойти путем

set language Russian
go
select getdate()

- пытался искать, как у сервера язык менять, но слава Богу, это трудно и я не нашел :)
- потом случайно подумал, что с другого сервака надо зайти (win2003 + sql2000 + php4 + iis6) => ПОЛУЧИЛОСЬ ПО-РУССКИ!

// Тут я понял, что шняжка в клиенте, но почему-то упорно пытался решить проблему чреез сервак :)

- на серваке с 2005 зашел в M$SQL / COnfiguration, но это то СЕРВЕРНЫЕ КОНФИГИ!!!! и там ниче не нашел...

- потом нафик скачал исходники PHP и там искал че-как => нашел функцию dbconvert

- искал уже по ней ии... нашел: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dblibc/dbc_pdc04b_92t0.asp

- а там есть строчка: "For the Microsoft Windows® operating system, DB-Library retrieves information about date, time, numeric, and currency formatting from the Sqlcommn.loc file. The location of Sqlcommn.loc is pointed to by the SQLLocalizationFile key in the Windows initialization file (Win.ini) under the [SQLSERVER] application heading."

- начал искать такой файл на серваке 2005 - не нашел..., а потом смарю далее: "For the Microsoft Windows NT® 4.0 operating system, you set the date, time, numeric, and currency formatting using the International application in Control Panel. Use the SQL Server Client Network Utility Use International Settings option to activate this for DB-Library."

- а именно: Use the SQL Server Client Network Utility!!!!

- все - терь я зашел на сервак sql2000, посмотрел где это, и что это есть

- а потом, зайдя на sql2005 и в том же месте system32 найдя этот Client Network Utility (c:\WINDOWS\system32\cliconfg.exe) поставил ГАЛКУ!!! прям сразу все исправилось!!! :))

== мои гуглики ==
sql 2005 "server language", site:cvs.php.net dbconvert, site:cvs.php.net mssql date time convert, site:cvs.php.net mssql datetime, site:cvs.php.net mssql, site:cvs.php.net datetimeconvert, datetimeconvert mssql, how datetimeconvert mssql php work?

==что меня подвело==
1. То, что я думал, что M$, выпустив 2005 SQL, заново сделает клиентские библиотеки для коннекта. Но я совсем забыл, что даже внутри WinXP, если поковыряться, то половина ресурсов из Win2k!!!

2. То, что я не выяснил сразу, что это проблема не серавака, а клиента и не пошел по пути клиента

3. То, что я подумал, что все, что есть в пуске - это все!
Tags: mssql, Победа
Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 2 comments