Java e Sql Server

4 respostas
J

Olá, Sou um novo membro do fórum.
Estou desenvolvendo um trabalho semestral onde preciso criar um banco de dados no SQL Server e conecta-li aí Java, mas porém preciso que o banco seja salvo em um pendrive e que eu possa acessá-lo, diversas vezes, estou com dificuldades na String de conexão, alguém pode ajudar?
Att;

4 Respostas

javaflex

Para este caso que descreveu geralmente se usa alguma solução embutida como o sqlite. Mas não deixa de ser possível com SQL Server, é só definir o FILENAME na unidade do seu pendrive:

USE [master]
GO

    CREATE DATABASE [SeuBanco] ON  PRIMARY 
    ( NAME = N'SeuBanco_Data', FILENAME = N'F:\SeuBanco_Data.mdf' , SIZE = 167872KB , MAXSIZE = UNLIMITED, FILEGROWTH = 16384KB )
     LOG ON 
    ( NAME = N'SeuBanco_Log', FILENAME = N'F:\SeuBanco_Log.ldf' , SIZE = 2048KB , MAXSIZE = 2048GB , FILEGROWTH = 16384KB )
    GO

Documentação: https://msdn.microsoft.com/pt-br/library/ms176061.aspx

O problema é que corre sérios riscos de corromper a base se retirar o pendrive durante alguma transação. E a unidade nem sempre vai ser a mesma.

Outra opção é usar LocalDb: https://msdn.microsoft.com/pt-br/library/hh510202.aspx

J

Cara muito obrigado ajudou bastante, podem, a String de conexão do Java, deve ficar como localhost? Ou devo colocar, o endereço do pendrive?
Att;

javaflex

Depende, se usar LocalDb deve ficar o endereço físico:

Server=(localdb)\v11.0;Integrated Security=true; AttachDbFileName=F:\SeuBanco_Data.mdf;

Se for conexão normal, deve ficar como localhost.

J

Cara muito obrigado, ajudou bastante!

Criado 2 de novembro de 2016
Ultima resposta 9 de nov. de 2016
Respostas 4
Participantes 2