2014-01-03 2 views
0

Чтобы вставить данные в базу данных SQL Server в приложении для Android, мне просто нужно выполнить запрос? У меня есть следующий код:Как вставить данные в SQL Server в приложение для Android

public int SaveUser(User user) 
{ 
    int r; 
    lock (locker) 
    { 
     connection = new SqlConnection("Data Source=" + path + ";Initial Catalog=DB;User ID=sa;Password=***********th"); 
     connection.Open(); 
     using (var command = connection.CreateCommand()) 
     { 
      command.CommandText = "INSERT INTO tblUsers (Username, UserEmail, FirstName, LastName, FacebookID) VALUES (@Username, @UserEmail, @FirstName, @LastName, @FacebookID)"; 
      command.Parameters.AddWithValue("@UserEmail", user.Email); 
      command.Parameters.AddWithValue("@Username", user.UserName); 
      command.Parameters.AddWithValue("@FirstName", user.FName); 
      command.Parameters.AddWithValue("@LastName", user.LName); 
      command.Parameters.AddWithValue("@FacebookID", user.FacebookID); 
      r = command.ExecuteNonQuery(); 
     } 
     connection.Close(); 
     return r; 
    }  
} 

И я получаю информацию от facebook-sdk входа в систему, так что я просто должен выполнить этот запрос, чтобы вставить данные в базу данных? Правильно ли использовать учетную запись sa? Вкладывает ли данные в базу данных приложения для Android так же, как это делается в приложении Windows? До сих пор я использовал Microsoft Access, и это было ужасно просто и легко, но теперь, когда я перешел на SQL Server 2008, я не знаю.

+0

Выглядит разумно - вы получаете какие-либо ошибки? – Liath

+1

Android использует Sqlite. Ваш код выглядит как C#, предназначенный для Windows, а не для Java-кода, предназначенного для Sqlite на Android. Просто Google добавляет sqlite android, и вы получите миллион результатов. Но ничего не будет работать, если у вас нет готовой базы данных. – sprocket12

+0

@MuhammadA Я не хочу использовать SQLite, SQLite не является надежной базой данных для баз данных с высоким трафиком, так как я читаю, поэтому я пытаюсь переключиться с SQL Server. – Random

ответ

0

Хорошо, это не совсем правильный ответ, но я не хотел оставлять комментарии.

Мне кажется, что вы действительно хотите использовать БД на сервере, а не в своем приложении для Android, потому что если пользователи будут добавлены в огромных количествах, то эти пользователи не могут поступать из самой ОС Android, они должны появиться от внешнего источника, т.е. интернет.

Так что, если они поступают из Интернета, вам необходимо центральное хранилище, которое является вашим сервером. Сервер ASP.NET, на котором размещается экземпляр SQL Server.

Вам понадобится доменное имя и решение для хостинга. Используйте либо MVC-контроллеры, либо WebAPI для настройки вашего веб-сайта и/или служб, которые взаимодействуют с вашим экземпляром SQL Server. Я бы порекомендовал вам использовать Entity Framework, и это сделало бы вашу жизнь намного проще.

У вас много хостов, AZURE - один, но его дорогой. Но, по крайней мере, это будет стоить вам примерно 8 фунтов в месяц для размещения баз данных.

Вы создаете свои веб-сайты MVC + или WebAPI (только сервисы) с помощью Visual Studio и используете настройки, которые серверный сервер дает вам загрузить.

После того, как услуги завершены, это простой вопрос о том, чтобы HTTP-сообщения получать/отправлять на ваш сервер, чтобы получать и устанавливать данные в вашей базе данных, а ваш Android-приложение будет действовать как клиент.

Я сделал все это неделю назад для очень простого сценария, и он работает хорошо.

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

Надеюсь, что вышеизложенное дает вам общее представление о том, как это можно сделать. Его очень высокий уровень, и вам придется идти на каждый этап, но его довольно просто, если вы знаете некоторые основы.

Это все, что я могу сказать ...

Смежные вопросы