IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

Crash de la JVM avec insertRow


Sujet :

JDBC Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 9
    Points : 9
    Points
    9
    Par défaut Crash de la JVM avec insertRow
    Bonjour,
    J'ai un problème avec mon programme java, Lorsque que j'appelle insertRow la JVM crash en me laissant le message d'erreur suivant.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    #
    # A fatal error has been detected by the Java Runtime Environment:
    #
    #  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x7c342ff0, pid=4256, tid=2284
    #
    # JRE version: 6.0_21-b06
    # Java VM: Java HotSpot(TM) Client VM (17.0-b16 mixed mode windows-x86 )
    # Problematic frame:
    # C  [msvcr71.dll+0x2ff0]
    #
    # If you would like to submit a bug report, please visit:
    #   http://java.sun.com/webapps/bugreport/crash.jsp
    # The crash happened outside the Java Virtual Machine in native code.
    # See problematic frame for where to report the bug.
    #
     
    ---------------  T H R E A D  ---------------
     
    Current thread (0x16bb6400):  JavaThread "Thread-4" [_thread_in_native, id=2284, stack(0x174a0000,0x174f0000)]
     
    siginfo: ExceptionCode=0xc0000005, reading address 0x18fa1000
     
    Registers:
    EAX=0x0000444e, EBX=0x00000000, ECX=0x00000005, EDX=0x00000001
    ESP=0x174ef8ac, EBP=0x174ef8b4, ESI=0x18fa0ff0, EDI=0x16fdf210
    EIP=0x7c342ff0, EFLAGS=0x00010293
     
    Top of Stack: (sp=0x174ef8ac)
    0x174ef8ac:   16bb6518 16b72540 174ef8e8 6d371508
    0x174ef8bc:   16fdf210 18fa0ff0 00000015 16bb6400
    0x174ef8cc:   132152b0 132152b0 16efbfe8 16f5a488
    0x174ef8dc:   18fa0ff0 16fffa80 00000001 174ef94c
    0x174ef8ec:   00919f47 16fdf210 174ef980 17a08f08
    0x174ef8fc:   00000000 00000004 174ef970 16fdf210
    0x174ef90c:   00000015 00000000 174ef960 174ef95c
    0x174ef91c:   16bcad44 00000004 00000001 16bb6400 
     
    Instructions: (pc=0x7c342ff0)
    0x7c342fe0:   8b 44 8e f4 89 44 8f f4 8b 44 8e f8 89 44 8f f8
    0x7c342ff0:   8b 44 8e fc 89 44 8f fc 8d 04 8d 00 00 00 00 03 
     
     
    Stack: [0x174a0000,0x174f0000],  sp=0x174ef8ac,  free space=13e174ef3e0k
    Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
    C  [msvcr71.dll+0x2ff0]
    C  [JdbcOdbc.dll+0x1508]
    j  sun.jdbc.odbc.JdbcOdbc.bindColBinary(JI[Ljava/lang/Object;[BI[B[J[B)V+0
    j  sun.jdbc.odbc.JdbcOdbc.SQLBindColBinary(JI[Ljava/lang/Object;[BI[B[J)V+65
    j  sun.jdbc.odbc.JdbcOdbcResultSet.bindBinaryCol(I[Ljava/lang/Object;[BI)V+62
    j  sun.jdbc.odbc.JdbcOdbcResultSet.bindCol(II)V+478
    j  sun.jdbc.odbc.JdbcOdbcResultSet.insertRow()V+29
    j  MenuImportExcelListener$m7_2Listener$1.run()V+890
    v  ~StubRoutines::call_stub
    V  [jvm.dll+0xf3abc]
    V  [jvm.dll+0x1865b1]
    V  [jvm.dll+0xf3c87]
    V  [jvm.dll+0xf3cfd]
    V  [jvm.dll+0x11dac0]
    V  [jvm.dll+0x1e6fb4]
    V  [jvm.dll+0x185f5c]
    C  [msvcr71.dll+0x9565]
    C  [kernel32.dll+0xb729]
     
    Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
    j  sun.jdbc.odbc.JdbcOdbc.bindColBinary(JI[Ljava/lang/Object;[BI[B[J[B)V+0
    j  sun.jdbc.odbc.JdbcOdbc.SQLBindColBinary(JI[Ljava/lang/Object;[BI[B[J)V+65
    j  sun.jdbc.odbc.JdbcOdbcResultSet.bindBinaryCol(I[Ljava/lang/Object;[BI)V+62
    j  sun.jdbc.odbc.JdbcOdbcResultSet.bindCol(II)V+478
    j  sun.jdbc.odbc.JdbcOdbcResultSet.insertRow()V+29
    j  MenuImportExcelListener$m7_2Listener$1.run()V+890
    v  ~StubRoutines::call_stub
     
    ---------------  P R O C E S S  ---------------
     
    Java Threads: ( => current thread )
    =>0x16bb6400 JavaThread "Thread-4" [_thread_in_native, id=2284, stack(0x174a0000,0x174f0000)]
      0x16ff1400 JavaThread "D3D Screen Updater" daemon [_thread_blocked, id=4184, stack(0x18510000,0x18560000)]
      0x003a6800 JavaThread "DestroyJavaVM" [_thread_blocked, id=3916, stack(0x008c0000,0x00910000)]
      0x16fba400 JavaThread "TimerQueue" daemon [_thread_blocked, id=5372, stack(0x18440000,0x18490000)]
      0x16f66c00 JavaThread "AWT-EventQueue-0" [_thread_blocked, id=2772, stack(0x17540000,0x17590000)]
      0x16f5f400 JavaThread "Swing-Shell" daemon [_thread_blocked, id=3380, stack(0x174f0000,0x17540000)]
      0x16bc6c00 JavaThread "AWT-Windows" daemon [_thread_in_native, id=4520, stack(0x17170000,0x171c0000)]
      0x16bc5800 JavaThread "AWT-Shutdown" [_thread_blocked, id=5332, stack(0x17120000,0x17170000)]
      0x16ed0400 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=3200, stack(0x170d0000,0x17120000)]
      0x16b5e800 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=4704, stack(0x16db0000,0x16e00000)]
      0x16b5b400 JavaThread "CompilerThread0" daemon [_thread_blocked, id=2512, stack(0x16d60000,0x16db0000)]
      0x16b57400 JavaThread "Attach Listener" daemon [_thread_blocked, id=4100, stack(0x16d10000,0x16d60000)]
      0x16b55c00 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=4648, stack(0x16cc0000,0x16d10000)]
      0x16b48000 JavaThread "Finalizer" daemon [_thread_blocked, id=5120, stack(0x16c70000,0x16cc0000)]
      0x16b43400 JavaThread "Reference Handler" daemon [_thread_blocked, id=5444, stack(0x16c20000,0x16c70000)]
     
    Other Threads:
      0x16b40c00 VMThread [stack: 0x16bd0000,0x16c20000] [id=4140]
      0x16b69800 WatcherThread [stack: 0x16e00000,0x16e50000] [id=2860]
     
    VM state:not at safepoint (normal execution)
     
    VM Mutex/Monitor currently owned by a thread: None
     
    Heap
     def new generation   total 4928K, used 3248K [0x02990000, 0x02ee0000, 0x07ee0000)
      eden space 4416K,  61% used [0x02990000, 0x02c3c160, 0x02de0000)
      from space 512K, 100% used [0x02e60000, 0x02ee0000, 0x02ee0000)
      to   space 512K,   0% used [0x02de0000, 0x02de0000, 0x02e60000)
     tenured generation   total 10944K, used 5149K [0x07ee0000, 0x08990000, 0x12990000)
       the space 10944K,  47% used [0x07ee0000, 0x083e7410, 0x083e7600, 0x08990000)
     compacting perm gen  total 15104K, used 15095K [0x12990000, 0x13850000, 0x16990000)
       the space 15104K,  99% used [0x12990000, 0x1384dc08, 0x1384de00, 0x13850000)
    No shared spaces configured.
     
    Dynamic libraries:
    0x00400000 - 0x00424000 	C:\Program Files\Java\jre6\bin\javaw.exe
    0x7c910000 - 0x7c9c9000 	C:\WINDOWS\system32\ntdll.dll
    0x7c800000 - 0x7c906000 	C:\WINDOWS\system32\kernel32.dll
    0x77da0000 - 0x77e4c000 	C:\WINDOWS\system32\ADVAPI32.dll
    0x77e50000 - 0x77ee3000 	C:\WINDOWS\system32\RPCRT4.dll
    0x77fc0000 - 0x77fd1000 	C:\WINDOWS\system32\Secur32.dll
    0x7e390000 - 0x7e421000 	C:\WINDOWS\system32\USER32.dll
    0x77ef0000 - 0x77f39000 	C:\WINDOWS\system32\GDI32.dll
    0x76320000 - 0x7633d000 	C:\WINDOWS\system32\IMM32.DLL
    0x7c340000 - 0x7c396000 	C:\Program Files\Java\jre6\bin\msvcr71.dll
    0x6d800000 - 0x6daa7000 	C:\Program Files\Java\jre6\bin\client\jvm.dll
    0x76ae0000 - 0x76b0f000 	C:\WINDOWS\system32\WINMM.dll
    0x6d7b0000 - 0x6d7bc000 	C:\Program Files\Java\jre6\bin\verify.dll
    0x6d330000 - 0x6d34f000 	C:\Program Files\Java\jre6\bin\java.dll
    0x6d290000 - 0x6d298000 	C:\Program Files\Java\jre6\bin\hpi.dll
    0x76ba0000 - 0x76bab000 	C:\WINDOWS\system32\PSAPI.DLL
    0x6d7f0000 - 0x6d7ff000 	C:\Program Files\Java\jre6\bin\zip.dll
    0x6d000000 - 0x6d14a000 	C:\Program Files\Java\jre6\bin\awt.dll
    0x72f50000 - 0x72f76000 	C:\WINDOWS\system32\WINSPOOL.DRV
    0x77be0000 - 0x77c38000 	C:\WINDOWS\system32\msvcrt.dll
    0x774a0000 - 0x775de000 	C:\WINDOWS\system32\ole32.dll
    0x77390000 - 0x77493000 	C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202\COMCTL32.dll
    0x77f40000 - 0x77fb6000 	C:\WINDOWS\system32\SHLWAPI.dll
    0x5b090000 - 0x5b0c8000 	C:\WINDOWS\System32\uxtheme.dll
    0x16e60000 - 0x16e6d000 	D:\Programmes\TaskbarEx\TaskbarExHelper.dll
    0x74690000 - 0x746dc000 	C:\WINDOWS\system32\MSCTF.dll
    0x75140000 - 0x7516e000 	C:\WINDOWS\system32\msctfime.ime
    0x7c9d0000 - 0x7d1f5000 	C:\WINDOWS\system32\shell32.dll
    0x6d230000 - 0x6d284000 	C:\Program Files\Java\jre6\bin\fontmanager.dll
    0x6d610000 - 0x6d623000 	C:\Program Files\Java\jre6\bin\net.dll
    0x719f0000 - 0x71a07000 	C:\WINDOWS\system32\WS2_32.dll
    0x719e0000 - 0x719e8000 	C:\WINDOWS\system32\WS2HELP.dll
    0x6d630000 - 0x6d639000 	C:\Program Files\Java\jre6\bin\nio.dll
    0x4fcf0000 - 0x4fe96000 	C:\WINDOWS\system32\d3d9.dll
    0x6de60000 - 0x6de66000 	C:\WINDOWS\system32\d3d8thk.dll
    0x77bd0000 - 0x77bd8000 	C:\WINDOWS\system32\VERSION.dll
    0x76960000 - 0x76a16000 	C:\WINDOWS\system32\USERENV.dll
    0x778e0000 - 0x779d8000 	C:\WINDOWS\system32\SETUPAPI.dll
    0x6fee0000 - 0x6ff35000 	C:\WINDOWS\system32\netapi32.dll
    0x77b50000 - 0x77b72000 	C:\WINDOWS\system32\appHelp.dll
    0x76f80000 - 0x76fff000 	C:\WINDOWS\system32\CLBCATQ.DLL
    0x77000000 - 0x770d4000 	C:\WINDOWS\system32\COMRes.dll
    0x770e0000 - 0x7716b000 	C:\WINDOWS\system32\OLEAUT32.dll
    0x765b0000 - 0x76606000 	C:\WINDOWS\System32\cscui.dll
    0x76590000 - 0x765ad000 	C:\WINDOWS\System32\CSCDLL.dll
    0x71a60000 - 0x71a72000 	C:\WINDOWS\system32\MPR.dll
    0x75ef0000 - 0x75ef7000 	C:\WINDOWS\System32\drprov.dll
    0x71b70000 - 0x71b7e000 	C:\WINDOWS\System32\ntlanman.dll
    0x71c30000 - 0x71c47000 	C:\WINDOWS\System32\NETUI0.dll
    0x71bf0000 - 0x71c30000 	C:\WINDOWS\System32\NETUI1.dll
    0x71be0000 - 0x71be7000 	C:\WINDOWS\System32\NETRAP.dll
    0x71b50000 - 0x71b63000 	C:\WINDOWS\System32\SAMLIB.dll
    0x75f00000 - 0x75f0a000 	C:\WINDOWS\System32\davclnt.dll
    0x17680000 - 0x178fe000 	C:\WINDOWS\system32\wpdshext.dll
    0x4eb80000 - 0x4ed2b000 	C:\WINDOWS\WinSxS\x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.6001.22319_x-ww_f0b4c2df\gdiplus.dll
    0x17aa0000 - 0x17ae9000 	C:\WINDOWS\system32\PortableDeviceApi.dll
    0x76be0000 - 0x76c0e000 	C:\WINDOWS\system32\WINTRUST.dll
    0x779e0000 - 0x77a77000 	C:\WINDOWS\system32\CRYPT32.dll
    0x77a80000 - 0x77a92000 	C:\WINDOWS\system32\MSASN1.dll
    0x76c40000 - 0x76c68000 	C:\WINDOWS\system32\IMAGEHLP.dll
    0x73cc0000 - 0x73cd3000 	C:\WINDOWS\system32\shgina.dll
    0x75900000 - 0x759fa000 	C:\WINDOWS\system32\MSGINA.dll
    0x74730000 - 0x7476d000 	C:\WINDOWS\system32\ODBC32.dll
    0x76340000 - 0x7638a000 	C:\WINDOWS\system32\comdlg32.dll
    0x762f0000 - 0x76300000 	C:\WINDOWS\system32\WINSTA.dll
    0x1f840000 - 0x1f858000 	C:\WINDOWS\system32\odbcint.dll
    0x17cf0000 - 0x17d6a000 	C:\WINDOWS\system32\Audiodev.dll
    0x17d70000 - 0x17fcd000 	C:\WINDOWS\system32\WMVCore.DLL
    0x17fd0000 - 0x1800a000 	C:\WINDOWS\system32\WMASF.DLL
    0x18010000 - 0x182ea000 	C:\WINDOWS\system32\xpsp2res.dll
    0x56000000 - 0x56064000 	C:\Program Files\OpenOffice.org 3\Basis\program\shlxthdl\shlxthdl.dll
    0x78520000 - 0x785c3000 	C:\WINDOWS\WinSxS\x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.30729.4148_x-ww_d495ac4e\MSVCR90.dll
    0x5e470000 - 0x5e507000 	C:\Program Files\OpenOffice.org 3\Basis\program\shlxthdl\stlport_vc7145.dll
    0x18320000 - 0x1833c000 	C:\Program Files\Adobe\Acrobat 7.0\ActiveX\PDFShell.dll
    0x71990000 - 0x719d0000 	C:\WINDOWS\system32\mswsock.dll
    0x76920000 - 0x76928000 	C:\WINDOWS\system32\LINKINFO.dll
    0x76930000 - 0x76956000 	C:\WINDOWS\system32\ntshrui.dll
    0x76ac0000 - 0x76ad1000 	C:\WINDOWS\system32\ATL.DLL
    0x6d370000 - 0x6d37d000 	C:\Program Files\Java\jre6\bin\JdbcOdbc.dll
    0x6ff40000 - 0x6ff5b000 	C:\WINDOWS\system32\odbccp32.dll
    0x197d0000 - 0x1980a000 	C:\WINDOWS\system32\msjtes40.dll
    0x19c20000 - 0x19c2b000 	C:\WINDOWS\system32\VBAJET32.DLL
    0x1a040000 - 0x1a0a2000 	C:\WINDOWS\system32\expsrv.dll
    0x18420000 - 0x1842e000 	C:\Program Files\Aventail\Connect\asdns.dll
    0x76ed0000 - 0x76ef7000 	C:\WINDOWS\system32\DNSAPI.dll
    0x76f60000 - 0x76f68000 	C:\WINDOWS\System32\winrnr.dll
    0x76f10000 - 0x76f3d000 	C:\WINDOWS\system32\WLDAP32.dll
    0x76f70000 - 0x76f76000 	C:\WINDOWS\system32\rasadhlp.dll
    0x4de20000 - 0x4de64000 	C:\WINDOWS\system32\odbcjt32.dll
    0x1a4c0000 - 0x1a630000 	C:\WINDOWS\system32\msjet40.dll
    0x1c840000 - 0x1c8d5000 	C:\WINDOWS\system32\mswstr10.dll
    0x58f60000 - 0x58f70000 	C:\WINDOWS\system32\odbcji32.dll
    0x197c0000 - 0x197cd000 	C:\WINDOWS\system32\msjter40.dll
    0x1d0e0000 - 0x1d10e000 	C:\WINDOWS\system32\MSJINT40.DLL
    0x1d750000 - 0x1d79c000 	C:\WINDOWS\system32\msrd3x40.dll
     
    VM Arguments:
    jvm_args: -Dfile.encoding=Cp1252 
    java_command: ModifBaseMain
    Launcher Type: SUN_STANDARD
     
    Environment Variables:
    CLASSPATH=.;C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msbase.jar;C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msutil.jar;C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar
    PATH=C:/Program Files/Java/jre6/bin/client;C:/Program Files/Java/jre6/bin;C:/Program Files/Java/jre6/lib/i386;C:\WINDOWS\System32;.
    USERNAME=conversphone
    OS=Windows_NT
    PROCESSOR_IDENTIFIER=x86 Family 15 Model 4 Stepping 9, GenuineIntel
     
     
     
    ---------------  S Y S T E M  ---------------
     
    OS: Windows XP Build 2600 Service Pack 3
     
    CPU:total 2 (1 cores per cpu, 2 threads per core) family 15 model 4 stepping 9, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ht
     
    Memory: 4k page, physical 1047788k(98728k free), swap 5141008k(3995744k free)
     
    vm_info: Java HotSpot(TM) Client VM (17.0-b16) for windows-x86 JRE (1.6.0_21-b06), built on Jun 22 2010 00:56:49 by "java_re" with MS VC++ 7.1 (VS2003)
     
    time: Thu Jan 06 14:10:01 2011
    elapsed time: 13 seconds
    Et voici le code.
    Le programme récupère les données d'un fichier Excel et remplis une table access 97 avec.
    La JVM ne crash pas systématiquement sur la même ligne. Et elle crash dnas toutes mes méthodes qui font appel à insertRow.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
     
    try{
    						//Création du JFileChooser et ouverture sur le repertoire de la DB
    						JFileChooser choixXls = new JFileChooser(ModifBase.pathDIR);	
    						choixXls.addActionListener(new choixXLSListener());
     
    						//Filtre pour n'afficher que les fichiers excel
    						FiltreSimple xls = new FiltreSimple("Fichiers Excel",".xls", ".xlsx");	
    						choixXls.addChoosableFileFilter(xls);
    						choixXls.showOpenDialog(ModifBase.f);
     
    						//Ouverture du fichier excel
    						HSSFWorkbook wb = null;
    						if(pathXls.endsWith(".xlsx") || pathXls.endsWith(".xls")){
    							InputStream myxls = new FileInputStream(pathXls);
    							wb = new HSSFWorkbook(myxls);
    						}
     
    						else{
    							ModifBase.messageErreur("Erreur à l'ouverture du fichier");
    							return;
    						}
     
    						HSSFSheet sheet = wb.getSheetAt(0);
    						HSSFRow row = sheet.getRow(0);
    						HSSFCell cell= null;
    						int nbRow = sheet.getLastRowNum()+1; 
    						int nbCol = row.getLastCellNum(); 
     
    						System.out.println("nb Ligne : "+nbRow);
    						System.out.println("nb Colonne : "+nbCol);
     
    						ArrayList tabCol = new ArrayList();
     
    						ModifBase.barreActu.setMaximum(nbRow-1);
    						//On se connecte à la base de données
    						Sql sql = new Sql();
    						sql.conConnexion(ModifBase.pathMDB);
     
    						//On remplace les caractère genant et on crée une table ayant le nom du fichier excel
    						String nomTable = nomXls.replace("\'","_");
    						nomTable = nomTable.replace(".", "_");
     
    						//Si il existe deja une table avec le meme nom que la feuille on la supprime
    						if(sql.TableExiste(nomTable)){
    								sql.supprimerTable(nomTable);
    							}
    						sql.ajoutTable(nomTable);
     
    						//On verifie si toutes les colonnes ont un nom, s'il n'est pas trop long, 
    						//si il ne contient pas de caractères non voulu, et s'il n'y a pas de doublon
    						for(int j=0;j<nbCol;j++){
    							cell = sheet.getRow(0).getCell(j);
    							System.out.println("j : "+j);
    							System.out.println("test 33 : "+sheet.getRow(3).getCell(3).getStringCellValue());
    							if(cell.getCellType() == cell.CELL_TYPE_BLANK){
    								System.out.println("La colonne "+(j+1)+" n'a pas de nom veuillez la nommer et recommencer");
    								sql.supprimerTable(nomTable);
    								return;
    							}
    							else if(cell.getStringCellValue().length()>64){
    								System.out.println("La colonne "+cell.getStringCellValue()+" a un nom trop long veuillez la renommer et recommencer");
    								sql.supprimerTable(nomTable);
    								return;
    							}
    							else{
    								String nomCol = cell.getStringCellValue().replace("\'","_");
    								nomCol = nomCol.replace(".", "_");
    								if(tabCol.contains(nomCol)){
    									int m = 2;
    									while (tabCol.contains(nomCol)){
    										nomCol=nomCol+"_"+m;
    										m++;
    									}
    								}
    								tabCol.add(nomCol);
    								//on ajoute la colonne à la table
    								sql.ajoutColonne(nomTable, nomCol, "varchar(150)");
    							}
     
    						}
     
    						ResultSet rs = sql.RequeteSelect("Select * from \""+nomTable+"\"");
    						System.out.println("Select * from \""+nomTable+"\"");
    						ResultSetMetaData metadata = rs.getMetaData();	
     
    						//On remplit les tables ajout et nomcolonne avec le contenu du fichier excel
    						rs.next();
     
    						for(int i=1;i<nbRow;i++){
     
    							for(int j=0;j<nbCol;j++){
    								cell = sheet.getRow(i).getCell(j);
    								if(cell.getCellType() == cell.CELL_TYPE_BLANK){}
    								else if(cell.getCellType() == cell.CELL_TYPE_NUMERIC){
    									rs.updateString(j+1,""+cell.getNumericCellValue());
    								}
    								else
    									rs.updateString(j+1,cell.getStringCellValue());
    							}
    							rs.insertRow();
    							ModifBase.barreActu.setValue(i);
    							ModifBase.f.repaint();
     
    						}
    						rs.close();
    						sql.con.close();
    						System.out.println("fini");
     
    					}
    					catch(NullPointerException e1){
    						ModifBase.messageErreur(e1,"m7_1_e1 : Veuillez selectionner une base de données");
    					}
    					catch(SQLException e2){
    						ModifBase.messageErreur(e2,"m7_1_e2 : Impossible d'acceder à la base sélectionnée, celle-ci est probablement en cours d'utilisation ailleur");
    					}
    					catch(Exception e3){
    						ModifBase.messageErreur(e3,"m7_1_e3 : Erreur de lecture du fichier Excel");
    					}
    Merci

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    ça sent le gros bug dans le driver jdbc/odbc. Le mieux a faire est de tenter de changer de version de la jvm. ou de se passer de ODBC si il n'y a pas une très bonne raison de s'en servir, odbc n'est vraiment pas un driver jdbc fréquentable

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Merci de ta reponse.

    Tu aurais le nom d'un autre driver pour access 97 du coup ?

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    houlà tu cumule: non je n'en connais aucun autre, obligé de passer par de l'ODBC, donc doublement à ne pas recommander en production

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    J'ai contourné le problème en faisant une requête INSERT INTO à la place du insertRow, c'est plus lent mais ca a l'avantage de pas planter 2 fois sur 3

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Crash de ma JVM
    Par key81190 dans le forum JDBC
    Réponses: 13
    Dernier message: 06/05/2008, 14h54
  2. mise en forme d'une cellule ajouter avec insertRow
    Par vacknov dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 31/07/2007, 08h33
  3. installer une jvm avec mon logiciel si pas installée?
    Par ccedced dans le forum Entrée/Sortie
    Réponses: 8
    Dernier message: 08/03/2007, 16h30
  4. Embarquement de la JVM avec JSmooth
    Par marmotte dans le forum Langage
    Réponses: 2
    Dernier message: 15/11/2006, 00h57
  5. [JVM] crash de la JVM
    Par xavdj dans le forum Général Java
    Réponses: 13
    Dernier message: 04/01/2006, 02h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo