Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Invalid object name 'бла бла' 
V
    Опции темы
nikitao
Дата 7.7.2008, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кот-программист
***


Профиль
Группа: Завсегдатай
Сообщений: 1206
Регистрация: 30.8.2005
Где: Спб

Репутация: 1
Всего: 26



Значит смотрите что есть smile  Есть цэлая дюжена ф-ций вида 

Код

private void BlaBlaBla(блатип1 блапеременная 1 .....)
{
  SqlConnection conn=null
  try
  {
     conn=new SqlConnection(CONNECTIONSTRING);
     Sql Command = new SqlCommand("SELECT * FROM БлаТаблица WHERE Блапараметры....",conn);
     conn.Open();
    // продолжение :) 
  }
   catch (Excexption ex)
   {
     CreateError(ex);
   }
   finally
   {
      if (conn!=null)
        conn.Close();
   }
}

и ф-ция CreateError :

Код

private void CreaateError(Exception e)
    {
        SqlConnection conn = null;
        try
        {
            DateTime time = DateTime.Now.ToUniversalTime();
            conn = new SqlConnection(CONNECTIONSTRING);
            string message = e.Message;
            string stack = e.StackTrace;
            SqlCommand command = new SqlCommand(String.Format("INSERT INTO Error VALUES('{0}','{1}','{2}')", time, message, stack), conn);
            conn.Open();
            command.ExecuteNonQuery();
        }
        catch (Exception ex)
        {
            File.AppendAllText(_directory+"error.txt", ex.Message + "\r\n" + ex.StackTrace + "\r\n\r\n");
            File.AppendAllText(_directory + "error.txt", e.Message + "\r\n" + e.StackTrace + "\r\n\r\n");
        }
        finally
        {
            if (conn!=null)
                conn.Close();
        }
    }


Вот. Вчера тестировал - все ok было. Если ошибки были - то в Error таблицу записывались. Все поправил - поставил на ночь работать. Все в целом работало НО! оказалось борохлило. в ERROR таблице нет ошибок , а в error файле куча 
Invalid object name 'Error'
ну и потом 
Invalid object name 'другая таблица'

Что с этим делать ?

Как я понимаю необходимо перед всеми именами таблиц прописать dbo и в какие кавычки все ставить ? Или там помоему [] так надо ? Я с SQL не дружу , а эту мелоч надо закончить. И в догонку вопрос : утачините pls как правельно прописывать имена Column , заносимые значение и т п.

ЗЫ Задание спасибо smile 

Это сообщение отредактировал(а) nikitao - 7.7.2008, 19:02


--------------------
Жизнь - печальная штука.
PM MAIL ICQ Skype GTalk   Вверх
Idsa
Дата 7.7.2008, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Цитата(nikitao @  7.7.2008,  23:00 Найти цитируемый пост)
в ERROR таблице нет ошибок , а в error файле куча 

Такое ощущение, что просто ночью сервер упал.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
nikitao
Дата 7.7.2008, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кот-программист
***


Профиль
Группа: Завсегдатай
Сообщений: 1206
Регистрация: 30.8.2005
Где: Спб

Репутация: 1
Всего: 26



ВО во во!!! Этот GoDaddy любит это делать %) Я ща время добавлю чтобы оно писало - сразу все ясно станет ))) но тем не мение вопрос про ' " ` [ и т д меня по прежнему интересует ибл лит-ры нормальный нет , а если кого нить не затруднит описать , то буду благодарен smile 


--------------------
Жизнь - печальная штука.
PM MAIL ICQ Skype GTalk   Вверх
Idsa
Дата 7.7.2008, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Цитата(nikitao @  7.7.2008,  23:09 Найти цитируемый пост)
Этот GoDaddy любит это делать

Что есть GoDaddy?

Цитата(nikitao @  7.7.2008,  23:00 Найти цитируемый пост)
Как я понимаю необходимо перед всеми именами таблиц прописать dbo и в какие кавычки все ставить ? Или там помоему [] так надо ?

dbo - схема по умолчанию, поэтому ее можно опускать.
Насчет кавычек. Так-то все правильно... но лучше заменить кавычки на параметры. Во-первых, это удобнее, во-вторых, можно не бояться Sql Injection (по крайней мере, тривиальных Sql Injection). В упрощенном варианте это делается так:
меняем
Код

SqlCommand command = new SqlCommand(String.Format("INSERT INTO Error VALUES('{0}','{1}','{2}')", time, message, stack), conn)

на
Код

SqlCommand command = new SqlCommand("INSERT INTO Error VALUES(@time, @message, @stack)", conn);
command.Parameters.AddWithValue("@time", time);
command.Parameters.AddWithValue("@message", message);
command.Parameters.AddWithValue("@stack", stack);


Цитата(nikitao @  7.7.2008,  23:00 Найти цитируемый пост)
Или там помоему [] так надо

[] используется (насколько я помню) для разрешения конфликтов с системными именами. Если ты используешь имена колонок вроде Customer, нужды в использовании [] нет. И вообще, если бы конфликт и был, он бы возник при создании таблицы (ну или при Alter Column). Так что об этом беспокоиться не стоит.



Это сообщение отредактировал(а) Idsa - 7.7.2008, 19:29


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
nikitao
Дата 7.7.2008, 19:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кот-программист
***


Профиль
Группа: Завсегдатай
Сообщений: 1206
Регистрация: 30.8.2005
Где: Спб

Репутация: 1
Всего: 26



Балин. Тогда в чем же может быть дело.... кроме того , что сервер упал..... просто тут такое дело. Работники программы говорят , что все упало ровно 1 раз и вроде у меня это на глазах было, но тем не мение у меня с виду все работало... ХЗ...может там еще что то ....ладно, надо разбираться...


Idsa, пасибо огромное. Будет у меня еще что то - напишу.

PS Godaddy - один из хрупнейших хостингов в штатах http://www.godaddy.com

Хотя меня он бесит. Ни Студию не подключить и на глазах ни раз падал....

Добавлено через 7 минут и 50 секунд
Кстати посмотрел про какие таблицы в error файле говорится. Там все ключевые. Т е если к ним не обращается , то у другим таблицам точно не обратится. вот так то. все указывает на то , что действительно упало у них что то ))

Это сообщение отредактировал(а) nikitao - 7.7.2008, 19:47


--------------------
Жизнь - печальная штука.
PM MAIL ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0536 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.