Programação  
 
Conhecimento computador >> Programação >> Programação em Java >> 
Como usar CLOB em Java
Agora você pode inúmeras tarefas completas através de Java Database Connectivity (JDBC ) Aplicação Programming Interface (API ), utilizando colunas CLOB banco de dados. CLOB , que significa "Character objeto grande, " é uma ferramenta de dados usado para armazenar e recuperar grandes quantidades de dados de texto em formato de caractere. A CLOB é capaz de armazenar até 128 terabytes de dados de caracteres do banco de dados . A sua total compatibilidade com o Java torna a escolha preferida por muitos desenvolvedores de software. Instruções
1

Use o seguinte fragmento de código para criar um objeto CLOB , onde " rs " é um objeto ResultSet :

Clob clob = rs.getClob (1);

a variável " clob " é agora um operador funcional no valor CLOB armazenados na primeira coluna do conjunto de resultados " rs ".
2

Digite o seguinte código ao seu banco de dados para executar dois valores CLOB idênticos em uma nova tabela , que são capazes de conter 500 kilobytes de dados de texto redundante :.

java.sql import * ;

public class PutGetClobs {

público void main ( string [ ] args ) estáticos

throws SQLException

{

//Registrar o driver JDBC nativo.

try {

Class.forName (" COM.ibm.db2.jdbc.app.DB2Driver ");

} catch (Exception e) {

System.exit (1 ) //Setup . erro

}

//estabelecer uma conexão e declaração com a qual trabalhar

Connection c = DriverManager.getConnection ( " jdbc: db2 : * local" ) . ;

Statement s = c.createStatement ();

//Limpe qualquer execução anterior desta aplicação

try {

s.executeUpdate ( . " DROP TABLE CUJOSQL.CLOBTABLE ");

} catch ( SQLException e) {

//Ignorar isso - assumir a mesa não existia

}
.

//Cria uma tabela com uma coluna CLOB. O padrão da coluna CLOB

//tamanho é de 1 MB

s.executeUpdate ( "CREATE TABLE CUJOSQL.CLOBTABLE ( COL1 CLOB )"); .

//Cria um PreparedStatement objeto que permitem que você coloque

//um novo objeto Clob no banco de dados

PreparedStatement ps = c.prepareStatement ( "INSERT INTO CUJOSQL.CLOBTABLE () "); .

//Cria um valor grande CLOB ...

tampão StringBuffer = new StringBuffer ( 500000 );

while ( buffer.Length () < 500000 ) { < br >

buffer.append ( " Todo o trabalho sem diversão faz Cujo um menino maçante . "); }


Cordas clobValue = buffer.toString ();

//Defina o parâmetro PreparedStatement . Este não é

//portátil para todos os drivers JDBC . Drivers JDBC não tem

//para apoiar setBytes para colunas CLOB . Isto é feito para

//permitem a geração de novos CLOBs . Também

//JDBC 1.0 permite que os motoristas uma maneira de trabalhar com colunas contendo dados

//Clob

ps.setString (1, clobValue ); .

//processar a instrução , a inserção do CLOB no banco de dados

ps.executeUpdate (); .

//Processar uma consulta e obter o CLOB que acabou de ser inserido fora do

//banco de dados como um objeto Clob

ResultSet rs = s.executeQuery ( "SELECT * FROM CUJOSQL.CLOBTABLE "); .

rs.next ();

Clob clob = rs.getClob (1);

//Acrescenta que Clob de volta para o banco de dados através

//o PreparedStatement

ps . . setClob (1, clob );

ps.execute ();

c.close (); . //Ligação perto também fecha stmt e rs

} < br >

}
3

Insira o seguinte código para o seu banco de dados para alterar o comportamento de seus objetos CLOB : .

java.sql import * ;
UpdateClobs

public class {

void main ( string [ ] args ) public static

throws SQLException

{

//Registra o JDBC nativo . motorista

try {

Class.forName (" COM.ibm.db2.jdbc.app.DB2Driver ");

} catch (Exception e) {< br >

System.exit (1 ) //erro de instalação

}

Connection c = DriverManager.getConnection . ( " jdbc: db2 : * local" );

Statement s = c.createStatement ();

ResultSet rs = s.executeQuery ( "SELECT * FROM CUJOSQL.CLOBTABLE ");

rs.next ();

Clob clob1 = rs.getClob (1);

rs.next ();

Clob clob2 = rs.getClob (1);

//truncar um . CLOB

clob1.truncate ( ( long ) 150000 );

System.out.println (" novo comprimento da Clob1 é" + clob1.length ());

//Atualiza uma parte do CLOB com um novo valor de cadeia de valor

string = " Alguns novos dados para uma vez "; .

int charsWritten = clob2.setString ( 500L , value) ;

System.out.println (" Os caracteres escritos é" + charsWritten );

//O bytes pode ser encontrado na posição 500 em clob2

longo startInClob2 = clob2.position (valor, 1);

System.out.println (" padrão encontrado começando na posição " + startInClob2 );

c.close () //Ligação perto também fecha stmt e rs .

}

}
4

Aplicar o seguinte código para executar CLOB em seu banco de dados . CLOB vai fechar-se sozinha após a realização de suas funções listadas abaixo

import java.sql * ; . .

UseClobs public class {

void main ( String [ ] args public static )

throws SQLException

{

//Registrar o driver JDBC nativo .

try {

Class.forName ( "com . ibm.db2.jdbc.app.DB2Driver ");

} catch (Exception e) {

System.exit (1 ) //erro de instalação

. }

Connection c = DriverManager.getConnection ( " jdbc: db2 : * local" );

Statement s = c.createStatement ();

ResultSet rs = s . executeQuery ( "SELECT * FROM CUJOSQL.CLOBTABLE ");

rs.next ();

Clob clob1 = rs.getClob (1);

rs.next ( );

Clob clob2 = rs.getClob (1);

//Determinar o comprimento de um LOB

longo end = clob1.length (); . < br >

System.out.println (" comprimento Clob1 é" + clob1.length ());

//ao trabalhar com LOBs , todos indexação que está relacionado a elas

//é 1- based, e não baseado em 0 como strings e arrays

longo startingpoint = 450 ; .

longo endingPoint = 50;

//obter parte do CLOB como um array de bytes

Cordas outString = clob1.getSubString ( startingpoint , (int) endingPoint ); .

System.out.println (" Clob substring é" + outString ); < br >

//Encontrar onde um sub- CLOB ou string é encontrado pela primeira vez dentro de um

//CLOB. A configuração para este programa colocou duas cópias idênticas de

//a CLOB repetindo no banco de dados . Assim, a posição inicial do

//string extraída de clob1 pode ser encontrada na partida

//posição na clob2 se a pesquisa começa perto da posição onde

//a string começa

longo startInClob2 = clob2.position ( outString , 440 ); .

System.out.println (" padrão encontrado começando na posição " + startInClob2 ); < br >

c.close () //Ligação perto também fecha stmt e rs

}

}

.

Anterior :

Próximo : No
  Os artigos relacionados
·Como fechar um JFrame em Java com um botão 
·Comunicação Java Applets Entre 
·Java Home não aponta para o JDK 
·Função Tempo em Java 
·Como passo através de um aplicativo Grails usando o Ne…
·Relação entre JVM Memória & Heap Size 
·Função de impressão em Java 
·Como editar margens no JEditorPane 
·Como criar Enumerar hierarquias com Java 
·Como fazer um Usuário Terminou loop em Java 
  Artigos em destaque
·Como restaurar arquivos Spool 
·Como compartilhar variáveis ​​de sessão em ColdFusion…
·Como substituir funções no Dev C + + 
·Como fechar Web User Control 
·Sobre o COBOL Língua 
·Tutorial HTML: Sobrescrito 
·Como alocar memória na pilha usando C + + 
·O que é o Microsoft Visual Studio 6.0 
·Como depurar em SQL 
·Quais são os papéis de referência e definir atributo…
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados