| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Кто изучал C# по Троелсену? |
| Автор: DrunkProgrammer 16.1.2008, 12:03 |
| Доброе время суток! Читаю "Язык программирования C# 2005 и платформа .NET 2.0", но натолкнулся на лажу с SQL Server (глава 22). Когда пытаюсь выполнить скрипт из файла CarsDatabase.sql, выходит следующая дурь: Msg 1802, Level 16, State 4, Line 2 CREATE DATABASE failed. Some file names listed could not be created. Check related errors. Msg 5123, Level 16, State 1, Line 2 CREATE FILE encountered operating system error 5(Отказано в доступе.) while attempting to open or create the physical file 'C:\Program Files\Microsoft SQL Server\MSSQL.2\MSSQL\Data'. Msg 911, Level 16, State 1, Line 1 Could not locate entry in sysdatabases for database 'Cars'. No entry found with that name. Make sure that the name is entered correctly. Msg 4902, Level 16, State 1, Line 2 Cannot find the object "dbo.Customers" because it does not exist or you do not have permissions. Msg 1767, Level 16, State 0, Line 2 Foreign key 'FK_Orders_Customers' references invalid table 'dbo.Customers'. Msg 1750, Level 16, State 0, Line 2 Could not create constraint. See previous errors. Msg 911, Level 16, State 1, Line 1 Could not locate entry in sysdatabases for database 'Cars'. No entry found with that name. Make sure that the name is entered correctly. Может кто сталкивался с такой хренью? |
| Автор: farad 16.1.2008, 12:28 |
| Возможно недостаточно прав, а возможно версия сервера и скрипта не совпадают.. |
| Автор: Любитель 16.1.2008, 12:57 |
| Скрипт сам покажи |
| Автор: DrunkProgrammer 16.1.2008, 13:02 | ||
|
| Автор: DrunkProgrammer 16.1.2008, 14:13 |
| Попробовал, начинает ругаться на следующую строчку, когда и ее заремировал, то заругался на следующую после Go строку: Could not locate entry in sysdatabases for database 'Cars'. No entry found with that name. Make sure that the name is entered correctly. |
| Автор: IApple 18.1.2008, 10:24 |
| 1) вот этот кусок: CREATE DATABASE [Cars] ON (NAME = N'Cars_Data', FILENAME =N'C:\Program Files\Microsoft SQL Server\MSSQL.2\MSSQL\Data' , SIZE = 3, FILEGROWTH = 10%) LOG ON (NAME = N'Cars_Log', FILENAME= N'C:\Program Files\Microsoft SQL Server\MSSQL\Data\Cars_Log.LDF' , SIZE = 1, FILEGROWTH = 10%) GO use[Cars] здается мне, сидит не на своем месте - ему б в самом начале быть. 2) именно с этих команд ошибки начинаются, проверь существует ли вообще путь C:\Program Files\Microsoft SQL Server\MSSQL\Data\ а если существует, то возможно там уже есть файлы (Cars*.*) и поэтому невозможно их повторно создать (попробуй удалить). |
| Автор: DrunkProgrammer 21.1.2008, 12:32 |
| Ребята, просьба ответить тем, кто работал с SQL Server, а то такое ощущение, что иногда ответчают просто ради участия. Тут, насколько я понял дело с правами на папку, там даже в сообщении есть: "Отказано в доступе", по крайней мере это то, что я надыбал на англоязычных сайтах. Но не смотря на полные права на папку для всех пользователей, все равно ничего не помогает. |
| Автор: IApple 21.1.2008, 13:56 |
| CREATE DATABASE failed. Some file names listed could not be created. Check related errors. Msg 5123, Level 16, State 1, Line 2 CREATE FILE encountered operating system error 5(Отказано в доступе.) while attempting to open or create the physical file 'C:\Program Files\Microsoft SQL Server\MSSQL.2\MSSQL\Data'. Варианты действий: 1) Проверь, существуют ли в указаной папке сами файлы базы даных. Если существуют, то попробуй их удалить (указаный скрипт их должен поидее наново создать, так что не жалко). 2) если действительно не хватает прав на папку, так поменяй в скрипте этот длиннющий путь, на что-то покороче, типа D:\TMP... который ты сам создал и права все есть (заодно потом будеш знать че удалять опосля). |
| Автор: DrunkProgrammer 22.1.2008, 06:17 |
| Нет файла базы, я собственно и хочу запустить скрипт, чтобы его создать. Папку менял - в корне диска D создавал и ставил полные права. Нихрена не помогает. |
| Автор: DrunkProgrammer 22.1.2008, 07:09 |
| Короче, попарившись вдоволь, взял и средствами SQL Server создал пустую базу Cars, потом немного изменив строку LOG ON (NAME = N'Cars_Log', FILENAME= N'C:\Program Files\Microsoft SQL Server\MSSQL\Data\Cars_Log.LDF' , SIZE = 1, FILEGROWTH = 10%) запустил скрипт и все ОК. |